User Tools

Site Tools


wiki:sms

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
wiki:sms [2019/09/25 15:36]
ghi removed
— (current)
Line 1: Line 1:
-====== SMS ====== 
  
-===== Use of integrated SMS commands ===== 
- 
-Wirnet™ Productline gateways can be configured using SMS commands. Most features available from the web interface and the REST API can be activated/​configured over SMS. 
- 
-SMS syntax and list of available SMS are described in //Keros SMS commands specification//​. Specification aligned with your firmware can be found in [[wiki:​resources#​keros_sms_documentation|the resources page]]. 
- 
-===== Use of customs SMS ===== 
- 
-Wirnet™ Productline gateways are able to send and receive SMS if the mobile network is properly configured. Modems are identified by ''​manufacturer_X''​ where: 
-  * ''​manufacturer''​ is the modem manufacturer (''​sierra'', ​ ''​quectelqmi'',​ ...) 
-  * ''​X''​ is a number starting from 0. It can vary if there are more than one modem on gateway or if modem has been reset (dongle unplug and replug for example) 
- 
- 
-To retrieve the identifier, use the ''​gsmdiag.py''​ command. 
- 
-Here is an output of ''/​tmp/​gsmdiag.txt''​. Two modems are displayed, and only one has a SIM card present. Its identifier is ''/​sierra_0''​. 
- 
-++++ 
-Content - gsmdiag.py output | 
-<code bash> 
-root@klk-lpbs-060434:​~ # gsmdiag.py 
-Diagnostic written in /​tmp/​gsmdiag.txt 
-root@klk-lpbs-060434:​~ # cat /​tmp/​gsmdiag.txt 
-Number of modems: 2 
-[Modem:/​sierra_1] 
-  Syspath:/​sys/​devices/​soc0/​soc/​2100000.aips-bus/​2184200.usb/​ci_hdrc.1/​usb2/​2-1/​2-1.3 
-  HardwarePosition:​1,​1 
-  Powered:1 
-  Online:0 
-  Manufacturer:​Sierra Wireless, Incorporated 
-  Model:​MC7304 
-  Revision:​SWI9X15C_05.05.58.00 r27038 carmd-fwbuild1 2015/03/04 21:30:23 
-  [SimProps] 
-    Present:0 
-  Error: no SIM in modem  ​ 
-[Modem:/​sierra_0] 
-  Powered:1 
-  Online:1 
-  Manufacturer:​Sierra Wireless, Incorporated 
-  Model:​MC7354 
-  Revision:​SWI9X15C_05.05.58.00 r27038 carmd-fwbuild1 2015/03/04 21:30:23 
-  [SimProps] 
-    Present:1 
-    CardIdentifier:​895XXXXXXXXXXXX1015 
-    SubscriberIdentity:​3XXXXXXXXXXXXX3 
-    LockedPins:​dbus.Array([],​ signature=dbus.Signature('​s'​),​ variant_level=1) 
-    PinRequired:​none 
-  [NetworkRegistrationProps] 
-    Status:​registered 
-    MobileCountryCode:​XXX 
-    MobileNetworkCode:​YY 
-    Name:ABCD 
-    Strength:80 
-  [ConnectionContexts] 
-    [/​sierra_0/​context1] 
-      Name:​Internet 
-      Active:1 
-      Type:​internet 
-      Protocol:ip 
-      AccessPointName:​apname 
-      Username:​uname 
-      Password:​pass 
-      AuthenticationMethod:​chap 
-</​code>​ 
-++++ 
- 
-==== Send ==== 
- 
-It is possible to send an SMS using a DBUS command. Examples: 
-  * To send an SMS using the modem ''/​sierra_0''​ (Wirnet iBTS): 
-<code bash> 
-dbus-send --system --print-reply --dest=org.ofono /sierra_0 org.ofono.MessageManager.SendMessage string:"​+33XXXXXXXXXX"​ string:"​test sms" 
-</​code>​ 
-  * To send an SMS using the modem ''/​huawei_0''​ (Wirnet iFemtoCell):​ 
-<code bash> 
-dbus-send --system --print-reply --dest=org.ofono /huawei_0 org.ofono.MessageManager.SendMessage string:"​+33XXXXXXXXXX"​ string:"​test sms" 
-</​code>​ 
- 
-==== Receive ==== 
- 
-Receive an SMS using a python test script : 
- 
-++++ 
-File - receive SMS python script | 
-<code bash receive-sms>​ 
-#​!/​usr/​bin/​python2 
-  
-from gi.repository import GLib 
-  
-import dbus 
-import dbus.mainloop.glib 
-  
-def chunkstring(string,​ length): 
- return (string[0+i:​length+i] for i in range(0, len(string),​ length)) 
-  
-def incoming_message(message,​ details, path, interface): 
- message_txt = str(message.encode('​utf-8'​)) 
- print("​Size of message: %d" % len(message_txt)) 
- print("​%s"​ % (message_txt)) 
- for line in chunkstring(message_txt,​ 40): 
- print("​%s"​ % line) 
-  
- for key in details: 
- val = details[key] 
- print(" ​   %s = %s" % (key, val)) 
- print(" ​   %s = %s" % ('​path',​path)) 
- print(" ​   %s = %s" % ('​interface',​ interface)) 
-  
-if __name__ == '​__main__':​ 
- dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) 
-  
- bus = dbus.SystemBus() 
-  
- bus.add_signal_receiver(incoming_message,​ 
- bus_name="​org.ofono",​ 
- signal_name = "​ImmediateMessage",​ 
- path_keyword="​path",​ 
- interface_keyword="​interface"​) 
-  
- bus.add_signal_receiver(incoming_message,​ 
- bus_name="​org.ofono",​ 
- signal_name = "​IncomingMessage",​ 
- path_keyword="​path",​ 
- interface_keyword="​interface"​) 
-  
- mainloop = GLib.MainLoop() 
- mainloop.run() 
-</​code>​ 
-++++ 
wiki/sms.1569418605.txt.gz · Last modified: 2019/09/25 15:36 by ghi