This commit was manufactured by cvs2svn to create branch 'decode'.
[gnokii.git] / Docs / developers / other / dmcp / readme
diff --git a/Docs/developers/other/dmcp/readme b/Docs/developers/other/dmcp/readme
new file mode 100644 (file)
index 0000000..9d9aefe
--- /dev/null
@@ -0,0 +1,148 @@
+
+1.see Smart Messaging 2.0 for info, what the DMCP is
+
+2.I didn't have success in changing menus via cable (without sending SMS).
+  Here is example foogle funtion. You will see only "Nokia service update failed"
+------------------------------------
+int foogle(char *argv[])
+{
+  GSM_NetworkInfo NetworkInfo;
+  int i;
+
+  char buffer[100]= { 0x0c, 0x01,
+                            0x06,  /* User Data Header Length */
+                            0x05,  /* IEI: application port addressing scheme, 16 bit address */
+                            0x04,  /* IEDL (IED length ?) */
+                            0x15,  /* destination address: high byte */
+                           0x84,  /* destination address: low byte */
+                            0x00,  /* originator address: high byte */
+                           0x00}; /* originator address: low byte */
+
+  int MSGLEN=9;
+
+  /* Initialise the code for the GSM interface. */     
+
+  fbusinit(NULL);
+
+  buffer[MSGLEN++]='B';
+  buffer[MSGLEN++]='O';     
+  buffer[MSGLEN++]='D';
+  buffer[MSGLEN++]='Y';
+  buffer[MSGLEN++]=':';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='I';
+  buffer[MSGLEN++]='A';
+  buffer[MSGLEN++]=':';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='O';
+  buffer[MSGLEN++]='P';
+  buffer[MSGLEN++]='E';
+  buffer[MSGLEN++]='R';
+  buffer[MSGLEN++]=' ';
+  buffer[MSGLEN++]='a';
+  buffer[MSGLEN++]='l';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='L';
+  buffer[MSGLEN++]='i';
+  buffer[MSGLEN++]='n';
+  buffer[MSGLEN++]='k';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='N';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='M';
+  buffer[MSGLEN++]=' ';
+  buffer[MSGLEN++]='S';
+  buffer[MSGLEN++]='M';
+  buffer[MSGLEN++]='S';
+  buffer[MSGLEN++]=10;
+  buffer[MSGLEN++]='+';
+  buffer[MSGLEN++]='4';
+  buffer[MSGLEN++]='8';
+  buffer[MSGLEN++]='6';
+  buffer[MSGLEN++]='0';
+  buffer[MSGLEN++]='2';
+  buffer[MSGLEN++]='9';
+  buffer[MSGLEN++]='5';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='/';
+  buffer[MSGLEN++]='+';
+  buffer[MSGLEN++]='4';
+  buffer[MSGLEN++]='8';
+  buffer[MSGLEN++]='6';
+  buffer[MSGLEN++]='0';
+  buffer[MSGLEN++]='2';
+  buffer[MSGLEN++]='9';
+  buffer[MSGLEN++]='5';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+  buffer[MSGLEN++]='1';
+
+  for (i=0;i<MSGLEN;i++) {
+    fprintf(stdout,_("%c"),buffer[i]);
+  }
+
+  Protocol->SendMessage(MSGLEN, 0x12, buffer);
+  GSM->GetNetworkInfo(&NetworkInfo); //need to make something
+
+  
+  GSM->Terminate();
+
+  return 0;
+}
+-----------------------------------
+3.to change via SMS - read parts of email sent by Martin Lucina [mato@kotelna.sk]
+-----------------------------------
+
+1. First of all, use the OPER (Operator) services rather than the Nokia
+   services. There's probably no reason why you couldn't use either but
+   there may be extra hooks in the phone firmware regarding Nokia
+   services that I don't know about.
+
+2. Make sure that "Operator access number 1" and "Operator access number
+   2" are set correctly in the services menu. The former should be set
+   to the SMS centre the messages you send are going to come from
+   (important, send yourself a test message and check it's details, some
+   operators set the sending SMSC number to one different from the one
+   you originally sent the message to). The latter should be the number
+   of the MS you are sending the SMS from.
+
+3. Don't send the messages as binary NBS messsages using the UDH. I
+   haven't been able to get this method to work and besides, the //SCK
+   compatibility header works just fine. 
+   
+   Also, while I haven't seen this, it's possible that if you send a
+   message in binary format, the destination MS will reply in binary
+   format. This makes the reply useless if you are sending from another
+   NBS-aware phone, since the NBS router will most likely silently
+   discard it (or try to forward it to the phones TTML/DMCP server,
+   which won't help either). 
+   
+   If you send the messages as text, the replies I've seen also come
+   back as text so you can retrieve them from the phone in the normal
+   fashion.
+
+One caveat I've noticed with sending NBS messages using the //SCK
+compatibility header is that the NBS grammar in the Nokia SM spec
+version 2 contradicts the grammar in the original Intel NBS spec. Nokia
+says you can using either a newline or space as the delimiter after
+"//SCK", it turns out that you _must_ use a space (as stated in the
+Intel spec). Of course you can still stick a newline in afterwards.
+
+I have attached a test file that will add two menu items that send SMS
+messages to your services menu. I send this to the phone using
+
+$ sendsms +6421XXXXXX < addsms
+
+[...]
+
+Cheers,
+
+-- 
+Martin Lucina http://www.kotelna.sk/mato/ Wellington, New Zealand             
+I've always been mad I know I've been mad like the most of us are             
+Pretty hard to explain why you're a madman even if you're not mad