[OFFTOPIC] Problema con CISCO 7942 trabajando con firmware SCCP bajo Asterisk

84 views
Skip to first unread message

Miguel Alberto Sanz Pardo

unread,
Sep 4, 2015, 9:06:44 AM9/4/15
to asterisk-es
Hola foreros,

Estoy haciendo pruebas con un terminal CISCO 7942 tratando de hacerlo funcionar mediante el protocolo SCCP (http://sourceforge.net/p/chan-sccp-b/wiki/using%20templated%20sccp.conf%20file/) y estoy teniendo un problema.

1º) Descargué, instalé y recargué el módulo chan_sccp.so en mi centralita
2º) Tras esto cargué en el teléfono el último firmware de SCCP de manera que en el SEP.conf.xml apunte hacia mi centralita:
<device>

  <sshUserId>cisco</sshUserId>
  <sshPassword>cisco</sshPassword>
  
  <devicePool>
<dateTimeSetting>
<name>Spain</name>
<dateTemplate>D/M/Y</dateTemplate> 
<timeZone>W. Europe Standard/Daylight Time</timeZone>
<ntps>
<ntp>
<name>130.206.0.1</name>
<ntpMode>Unicast</ntpMode>
</ntp>
</ntps>
</dateTimeSetting>
<callManagerGroup>
<members>
<member priority="0">
 <callManager>
<ports>
 <ethernetPhonePort>2000</ethernetPhonePort>
</ports>
<processNodeName>192.168.1.40</processNodeName>
 </callManager>
</member>
</members>
</callManagerGroup>
   <!--  <srstInfo>
      <name>Enable</name>
      <srstOption>Enable</srstOption>
      <userModifiable>true</userModifiable>
      <ipAddr1>x.x.x.x</ipAddr1>
      <port1>2000</port1>
      <ipAddr2/>
      <port2>2000</port2>
      <ipAddr3/>
      <port3>2000</port3>
    </srstInfo> -->
  </devicePool>
  
  <vendorConfig>
    <disableSpeaker>false</disableSpeaker>
    <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
    <forwardingDelay>1</forwardingDelay>
    <pcPort>0</pcPort>
    <settingsAccess>1</settingsAccess>
    <garp>0</garp>
    <voiceVlanAccess>0</voiceVlanAccess>
    <videoCapability>0</videoCapability>
    <autoSelectLineEnable>0</autoSelectLineEnable>
    <webAccess>0</webAccess>
    <daysDisplayNotActive>1,7</daysDisplayNotActive>
    <displayOnTime>08:30</displayOnTime>
    <displayOnDuration>11:30</displayOnDuration>
    <displayIdleTimeout>01:00</displayIdleTimeout>
  </vendorConfig>
  
  <userLocale> 
<name>Spanish_Spain</name>
<uid>1</uid> 
<langCode>es</langCode> 
<version>10.5.3.0</version> 
<winCharSet>iso-8859-1</winCharSet> 
</userLocale> 
<networkLocale>Spain</networkLocale>
<networkLocaleInfo> 
<name>Spain</name> 
<uid>64</uid> 
<version>10.5.3.0</version> 
</networkLocaleInfo>
  
  
<deviceSecurityMode>1</deviceSecurityMode>
<loadInformation>SCCP42.9-4-2SR1-1S</loadInformation>
<idleTimeout>3600</idleTimeout>
<authenticationURL></authenticationURL>
<directoryURL>http://192.168.1.40/cisco/directory.xml</directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL>http://192.168.1.40/cisco/services.xml</servicesURL>
<dscpForSCCPPhoneConfig>104</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>184</dscpForCm2Dvce>
<transportLayerProtocol>4</transportLayerProtocol>
<capfAuthMode>0</capfAuthMode>
<capfList>
<capf>
 <phonePort>3804</phonePort>
</capf>
</capfList>
<certHash/>
<encrConfig>false</encrConfig>
</device>

3º) Creé el archivo correspondiente sccp.conf de esta manera para hacer una prueba rápida:

[general]
servername = Asterisk
keepalive = 60
debug = 1
context = from-internal-xfer
dateformat = D.M.Y
bindaddr = 0.0.0.0
port = 2000
disallow=all
allow=alaw
firstdigittimeout = 16
digittimeout = 5
autoanswer_ring_time = 1
autoanswer_tone = 0x32
remotehangup_tone = 0x32
transfer_tone = 0
callwaiting_tone = 0x2d
musicclass=default
language=en
dndFeature = on
sccp_tos = 0x68
sccp_cos = 4
audio_tos = 0xB8
audio_cos = 6
video_tos = 0x88
video_cos = 5
echocancel = on
silencesuppression = off
private = on
callanswerorder=oldestfirst


[SEP0026CBBFA395]
description = Cisco SCCP 7942
type=device
devicetype=7942
button = line,1008


[1008]
id=1008
type=line
label=Cisco 7942G
description=Cisco SCCP 7942G 
cid_name=Caller ID
cid_num=1008
accountcode=1008
context=from-internal-xfer
transfer=on
musicclass=default
language=en
regexten=1008
silencesuppression=off
context = from-internal-xfer

El caso es que al hacer un reload del device aparece este mensaje y diría que tengo bien la sintaxis a la hora de definir el "button"
¿Alguien es capaz de ver donde esta el fallo?


[2015-09-04 14:48:57] ERROR[28578]: sccp_enum.c:660 sccp_config_buttontype_str2val: SCCP: LOOKUP ERROR, sccp_config_buttontype_str2val() not found
[2015-09-04 14:48:57] WARNING[28578]: sccp_config.c:1728 sccp_config_parse_button: Unknown button type ''. Will insert an Empty button instead.
[2015-09-04 14:48:57] NOTICE[28578]: sccp_config.c:682 sccp_config_object_setValue: SCCP: Option Description: Buttons come in the following flavours (empty, line, speeddial, service, feature).
Examples (read the documentation for more examples/combinations):
 - button = line,1234
 - button = line,1234,default
 - button = empty
 - button = line,98099@11:Phone1
 - button = line,98099@12:Phone2!silent
 - button = speeddial,Phone 2 Line 1, 98021, 98021@hints
 - button = feature,cfwdall,1234



un saludo y gracias por vuestra ayuda

Miguel Alberto Sanz Pardo

unread,
Sep 7, 2015, 3:57:26 AM9/7/15
to asterisk-es
SI hago un sccp show lines me aparece algo de este estilo:

+--- Lines ---------------------------------------------------------------------------------------------------------------------------+
| Ext           Suffix    Label                          Device           MWI  Chs  Active Channel                                    |
+ ============= ========= ============================== ================ ==== ==== ================================================= +
| 1008                    Cisco 7942G                    --               OFF  0    --                                                |
| Hotline                 hotline                        SEP0026CBBFA395  OFF  0    --                                                |
+-------------------------------------------------------------------------------------------------------------------------------------+

Es como si no me estuviera pillando la extensión de pruebas que he definido (1008) con respecto al device con MAC SEP0026CBBFA395.

Sin embargo aparece una línea llamada hotline, que si no me confundo es algo así como la línea que aparece por defecto sino asocias el device a otra línea, que alguien me corrija si me confundo. Voy a seguir investigando a ver si consigo solucionarlo.


un saludo

Miguel Sanz


Miguel Alberto Sanz Pardo

unread,
Sep 7, 2015, 4:06:51 AM9/7/15
to asterisk-es
Qué curioso, en el contexto [general] del sccp.conf tenía estas 3 líneas pero comentadas. No las puse en el primer post puesto que al estar comentadas entendía que no afectarían a la configuración:

;hotline_enabled=yes ;can devices without configuration register
;hotline_context=default ; context for hotline
;hotline_extension=111 ; extension will be dialed on offHook

Las he quitado complétamente del sccp.conf y he hecho un #service asterisk restart y ya parece que funciona (al menos se registra de manera correcta, ahora probaré a hacer llamadas a ver si funciona de manera correcta).

Ahora si hago un: # sccp show lines me muestra algo de este estilo:

+--- Lines ---------------------------------------------------------------------------------------------------------------------------+
| Ext           Suffix    Label                          Device           MWI  Chs  Active Channel                                    |
+ ============= ========= ============================== ================ ==== ==== ================================================= +
| 1008                    Cisco 7942G                    SEP0026CBBFA395  OFF  0    --                                                |
| Hotline                 hotline                        --               OFF  0    --                                                |
+-------------------------------------------------------------------------------------------------------------------------------------+

Reply all
Reply to author
Forward
0 new messages