NowSMS v2011.09.22 Feedback | Search |
NowSMS Support Forums ⬆ NowSMS Support - SMS Issues ⬆ Archive through May 20, 2013 ⬆ |
◄ ► |
Author | Message | |||
sam New member Username: Samdsouza Post Number: 16 Registered: 08-2006 |
Hi Des, Checked the latest NowSMS v2011.09.22 and its great. Got the following feedback on the latest version and would request your inputs: 1. DLRS If SMPPRejectErrorCodes is defined for specific error codes NowSMS does generate the rejected DLR but this rejected DLR doesnt get routed to the specific user account. It stays in the SMSIN folder only. The DLR does have the RouteToLocalUser and ReceiptFailed=Yes but its stuck in the SMSIN folder. Shouldnt this DLRs also be routed to the user account? 2. ReRoute Rejected Messages One more feature got me thinking on the SMPPRejectErrorCodes. Lets say SMPPRejectErrorCodes=12 is defined for a specific outbound smpp connection and the message got rejected by that route. Or lets say the message got rejected for any reason by the operators SMSC. Is it possible to ReRoute this message to an other defined SMPP outbound connection? Something like the BackupForRoute feature? Something like BackupForReject=12 feature? 3. SenderID Prefix I had seen a thread where somebody suggested adding a prefix to the outbound senderID. For example for a specific outbound connection can we have something like this: OutSenderPrefixConvert=*;AB- Something like: Submitted Original SenderID: Test Outgoing SenderID: AB-Test Is this possible? 4. OutRecipPrefixConvert Lets say i got 0:+44 defined in the conversion. This works only when the particular outbound connection is defined as "support any outbound message traffic". If this particular outbound connection is defined for +44 only then the message gets rejected. In your change log its mentioned "For outbound messages, the conversion occurs before the message is submitted via this SMSC connection". If its happening before the message is submitted then the message should not be rejected and 0777777777 should be convered to +44777777777 and accepted by the outbound connection. 5. 2 way sms SMS command Prefix I tested the latest version by defining comma seperated multiple SMS command prefixes but it doesnt work. It works only when a single sms command prefix is defined. This doesnt help if i want multiple sms command prefixes to be routed to a single user on NowSMS. Kindly let me know Thanks in advance Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3508 Registered: 08-2008 |
Hi Sam, 1. Make sure that the user account that submitted the message has "Accept received messages for this user" checked. If it does not, no messages, including delivery reports, will be routed to that user account. 2. That's an interesting idea. It requires some more thought and analysis. But I like the idea. It might be difficult to make the logic error code dependent, but the general idea that if this connection fails to accept the message, try a backup route. 3. No, there's no support for a wildcard. We can look at adding this in a future version. That said, you could do this: OutSenderPrefixConvert=A:AB-A,B:AB-B,C:AB-C,D:AB-D,E:AB-E,F:AB-F,G:AB-G,H:AB-H,I :AB-I,J:AB-J,K:AB-K,L:AB-L,M:AB-M,N:AB-N,O:AB-O,P:AB-P,Q:AB-Q,R:AB-R,S:AB-S,T:AB -T,U:AB-U,V:AB-V,W:AB-W,X:AB-X,Y:AB-Y,Z:AB-Z, Repeat with numerics if you also want them converted. I was going to repeat with lower case, but it appears this prefix conversion is case insensitive (which is odd, because it was only expecting numerics). I am filing a bug report on this, as it should probably be case sensitive. 4. You raise a good point, there should be a global conversion setting, not just connection specific settings. We actually added the connection specific setting for the case of a connection that required international format numbers to be downgraded to local numbers. More often you are doing the reverse. I will make the suggestion that a global prefix conversion option should also be added, which gets evaluated before routing. I should also point out that the connection specific conversion will still work for the situation you describe, you just need to add 0* to the preferred connection list for that connection. So in this case, you tell NowSMS that the connection handles +44* and 0* 5. That is correct. Each command prefix requires a separate entry. Multiple entries can point to the same script/command. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 18 Registered: 08-2006 |
Hi Des Thanks for your inputs. My Responces: 1. It is checked. The issue is that the reject DLRs genereated by NowSMS arent getting routed. The reject dlrs or all dlrs given by the Operator are being passed on to the user account. In short if the sms is rejected immediately and the dlr is genereated by NowSMS that is not getting routed back. 2. Yes. This would be great feature for NowSMS. Am not sure technically how you would implement it but would be a great addition. Message rejected with a specific error code on a Outbound connection retry it via other outbound connection. If it doesnt work for the other outbound connection then drop the message. The logic might be same as backup route parameter. Only difference would be the connection need NOT be down for the re-route of sms to happen. 3. This should be case insensitive if you ask me. SenderID like "Test" and "test" and "TEST" should be the same i believe. The A to Z thing wont work out as the user can use any senderID. So if senderID used by the user is "test" then it wont match it. It should be wildcard thing. Something like: OutSenderPrefixConvert=*:AB-* ex: Submitted Original SenderID: Test Outgoing SenderID: AB-Test 4. Yes. Your suggested solution will work out. But that global conversion setting would be great. 5. multiple SMS command prefixes should really be great. Comma sepereated multiple SMS command prefixes. So if multiple keywords need to be defined for a single NowSMS user then we can do it with a single entry in the 2 way tab. Thanks once again Sam | |||
sam New member Username: Samdsouza Post Number: 19 Registered: 08-2006 |
Hi Des Had one more suggestion on the 2 way sms thing. Currently the inbound sms using the 2 way sms to a user account are not counted in the SMS stats. Possible to get the inbound SMS accounted for? Then basically one can have a NowSMS user account for inbound only which can be accounted. I mean then one can add sms credits for the inbound sms as well. Kindly let me know Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3513 Registered: 08-2008 |
Hi Sam, I am most concerned about #1. I just tried a test here where the provider returns an ESME_RINVDSTADR (0x0B) error on an invalid address. If I look at the SMSOUT log, I see this, and then the next entry shows a delivery receipt being routed to a local user account: OK -- LocalUser:tester There must be something that I am missing about your configuration. Can you try restarting the service ... it shouldn't make a difference, but there is one possibility I am suspicious of. Regarding #3 ... we'll see about a wildcard, but using my example of listing all the letters: Submitted Original SenderID: Test Outgoing SenderID: AB-Test Submitted Original SenderID: test Outgoing SenderID: AB-Test (Note the change of capitalisation in the second example.)
This is difficult. We have customers that are using the fact that this does not use a credit. The idea is that these messages should only be routed to a local user account. They use the fact that this does not use a credit to make sure that this account cannot be used to send outbound messages. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 20 Registered: 08-2006 |
Hi Des Thanks for the inputs. My observations: Regarding #1. Restarted. Rebound the connection but same issue. got following paremeters set [SMPP] DefaultDelReceipt=Yes Also the Transmitter bind has this DefaultDelReceipt=Yes Do you want DefaultDelReceipt=Yes in the Receive bind as well? The DLR does have the RouteToLocalUser and ReceiptFailed=Yes but its stuck in the SMSIN folder. Sometimes i notice numeric folders being created and sometimes the root smsin folder has .rec files Strangely in the SMSOUT log file....i dont have the OK -- LocalUser:tester thing i get only ERROR: SMS Provider Specific Error Code 0x000004 there.... Other regular DLRs i do get the OK -- LocalUser:tester thing In my case the message got rejected on the phonenumber and not on the sender ...does that make a difference? Regarding #3 ... Wildcard would really help. Would make it simple to handle. Agree with u that it should be case sensitive. Regarding: 2 way sms thing. "This is difficult. We have customers that are using the fact that this does not use a credit." Guess they would be using the non credit thing for delivery reports. In case they are not using for delivery reports (for example they using for 2 way sms on keywrods or something) then they would be using some kind of accounting call back for tracking purposes i believe. Maybe you can have a "Inbound Charged to account" kind of option while setting up the NowSMS user account. If its ticked then credits are deducted and if its not then it wont use the credits. This would solve the "They use the fact that this does not use a credit to make sure that this account cannot be used to send outbound messages. " issue also. This feature would make nowsms ideal for content providers who operate on short codes. I mean this would be a simple turn key solution without involving any external DBs or accounting URLs stuff. Kindly let me know Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3514 Registered: 08-2008 |
Hi Sam, I am off for the weekend, but I remember this issue. You must enable the checkbox to process messages on the 2-way page, otherwise messages do not get routed out of SMS-IN. It used to be that this was required for any messages to be routed to local users, but many methods now bypass this extra routing step. NowSMS generated non delivery receipts still go through the SMS-IN queue. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 23 Registered: 08-2006 |
Hi Des Thats it. Enabling the 2 way page did the trick. Works Great now. Would request your inputs next week when you get time on the wildcard senderID prefix and the charging of 2 way sms thing. Also i saw the inbox page. Thats brilliant. One thing wanted to say. Currently the inbox monitors and displays the req files containing the DLRs. Cant this picked up form the user log file. Ex: C:\Program Files\NowSMS\USERS\tester\SMS-20111005.LOG The advantage would be that there would be no need to store/save the req files in the user Q folder. Also even if the user downloads the dlrs (the req files) via SMPP still the records of DLR could be viewed in the inbox. Currently if the user downloads the dlr files via SMPP then the inbox page doesnt display the DLR. Also You can have a similar Sent SMSes page also. The Sent Items can be simillarly picked up from the user log file. Also can we have a ReqRetainDays=0 kind of parameter simlar to ErrorQRetainDays=0 which would automatically delete the REQ files being created in the user Q folder? Thanks once again for your time. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3521 Registered: 08-2008 |
Hi Sam, I do not have a time estimate yet, but we will add support for a wildcard prefix addition. It will work like this: OutSenderPrefixConvert=:AB- In this case, the prefix to match before the ":" is blank, meaning anything will be considered a match, and AB- will be added as a prefix.
I understand the scenario. I'm just not sure it is feasible for us at this time. In other words, it may be more complex than it seems. Regarding the user inbox, this was intended primarily for HTTP users that also wanted to be able to receive messages. We do plan to add support for accessing user logs to this interface in the future. If you look at the Administration interface (enable admin access for an account), there is a "Recent Activity" display. Our plan is to add a similar option to the user side of the interface, so that it would extract information from the user log file (e.g.,. C:\Program Files\NowSMS\USERS\tester\SMS-20111005.LOG). I don't have a time estimate on that either.
It probably would not be difficult to add, but my question would be why? Why route these receipts to a user account if it cannot process them? Unless you only wanted the user log to be updated. That is an interesting idea. In that case, maybe what would make sense is for NowSMS to update the user log file with delivery receipts even if "Accept received messages for this user" is not enabled. In that case, if the setting was not enabled, the receipts would be logged, but message files not actually created. That way the system could still support normal SMPP user accounts that need to accept messages. It's an interesting idea. I'll discuss further with engineering, but obviously we need the "Recent Activity" for the user account to be implemented first. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 25 Registered: 08-2006 |
Hi Des Thanks for your inputs. My responces @wildcard prefix addition. Yes. Your explanation is prefect. @Inbound Charged to account Not that important but i believe this would be really helpful for content/vas providers. @user inbox Yes. The sms user log file has all the details and can be used similar for recent activty thing for the user like the admin. @ReqRetainDays=0 kind of parameter Yes. Bingo. Want only the user log to be updated. For non SMPP Users there is no need for .REQ files unless to show/display the DLR. So by default each and every NowSMS user will get DLRs. SMPP or HTTP wont make any difference. SMPP users can collect the DLR REQ files via SMPP RX and the HTTP users can see/view them in the inbox page. Also you are correct on the no REQ Message files not created. REQ files are NOT required at all for HTTP users. Cause then the server admin has to delete the REQ Files manually for the HTTP Users. Else those REQ Files will get suck in the user Q folder waiting to be picked up via lets say SMPP RX connection. So in a nutshell if SMPP is enable for NowSMS user account then create the REQ Files and the DLR gets logged in the SMS Log files of the user. If HTTP User and SMPP NOT enabled then dont require REQ Files but do log the DLR in the SMS log file of the user. Currently its logging in the DLR in the SMS log file of the user. The only issue would be to get rid of REQ Files for NON SMPP HTTP only user accounts. Maybe you can discuss this after you get the "Recent Activity" for the user account be implemented. Also then this would change the inbox reading techinque as currently you are reading from the REQ Files. So not sure if technically this is a sound idea as this would invovle changing some logic at your side to process the inbound messages. @ReRoute Rejected Messages Maybe this can be also looked at into future. But this is one feature would love to have in NowSMS. Thanks once again for ur time. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3522 Registered: 08-2008 |
Good thoughts Sam. Give us a couple of weeks, I got to play around with an update that includes a display of recent activity in the user log, and it looks good. (Even better, on the admin side, you can view logs for any of the users. I'd love to see a find option to fiurther filter results, but we will see.) The receipts to the user log is a very interesting proposition. This would have to be as an option, because some customers rely on processing them via 2-way commands. But I very much like the idea. I haven't forgotten about the rerouting of rejected messages. The dilemma is how to implement. The easiest way would be a route specific setting that indicates a fail over route to attempt for rejected messages. We would requeue the rejected message with an explicit routing hint for the other route. My concern is what if this other route was preferred for some messages and had a fail over reject route for the first route. We woukd have to track all attempted routes to prevent a circular rerouting, or we only allow a single reroute. Only allowing a single reroute would be the easy option ... do you think that would be sufficient? -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 27 Registered: 08-2006 |
Hi Des Kindly take your time on this. I believe single re-route would be fine and sufficient. Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3539 Registered: 08-2008 |
Hi Sam, A quick follow-up ... we are still investigating the idea of rerouting messages to another connection after a failure response. And we are still looking at how to best implement a configuration setting to support delivery receipts for a user account where the receipts are logged only without creating message files. However, we have added support for viewing the user activity logs in the web interface. It is currently limited to a maximum of 10000 entries, going back no more than 14 days. There is obviously room that this could be improved, but it's a good starting point. Wildcard OutSenderPrefixConvert support has been added like I described earlier. We have also added support for global sender/recipient prefix conversions, in addition to the connection specific settings. The update that adds these interim changes is at http://www.nowsms.com/download/nowsms20111018.zip -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 30 Registered: 08-2006 |
Thanks a lot Des. Will test it and update if there are any issues in this. Regards Sam | |||
sam New member Username: Samdsouza Post Number: 31 Registered: 08-2006 |
Hi Des Works Great. Following feedback: 1. Recent Activity for admin is great. But in Recent Activity for NowSMS user the DLRs are getting shown twice. Once in Inbox and other in the Recent Activity. Also it would be great if you can show the DLR for the specific message. I mean lets say message sent to 44123456 then show the DLR for that specific message or just the DLR stats like delivered or undelivered against the outgoing sms. I mean better way to display the recent activity. Technically its great. 2. GlobalRecipPrefixConvert and GlobalSenderPrefixConvert is working great. And the case sensitive issue in the prefix is also fixed. Thanks for this. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3551 Registered: 08-2008 |
Hi Sam, My thinking is that a filtering/search type of option is what the user activity log really needs. That's what I'm trying to push for next. It might be interesting to add inline links to all phone numbers and message ids, so if you click on one it makes that a filter. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 32 Registered: 08-2006 |
Hi Des Yes precisely. Also maybe something like a dropdown for day wise or month wise logs. Also the inbox and the SMS-IN in the activity are being duplicated in case of a http user. Guess that relates to my REQ files issue. Regards Sam | |||
sam New member Username: Samdsouza Post Number: 33 Registered: 08-2006 |
Hi Des One more activity filter. How about giving the user an option to export SMS logs based on days/months? Also the sms user daily stats which are visible to the admin. Can this daily sms stats be available to the sms user also? Thanks Sam | |||
sam New member Username: Samdsouza Post Number: 34 Registered: 08-2006 |
Hi Des GlobalRecipPrefixConvert parameter can be used in this intresting way also. Possible to have a number counter for this parameter. On matching exact number of digits in a mobile number the conversion happens. I mean the following scenario: GlobalRecipPrefixConvert=7?????????:447????????? 7????????? - inward number of 10 digits 447????????? - outward number of 12 digits Regards Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3592 Registered: 08-2008 |
Hi Sam, I wanted to follow-up on a couple of items. We have added a filter/search to the recent activity log. And we have added a menu option to allow a user to access their log files and activity summary. Still looking into how to implement the reroute on error capability. Update is at http://www.nowsms.com/download/nowsms20111114.zip. The prefix conversion does not support any wildcards, it simply looks for a prefix and replaces it. It would be nice to have a length related option, like you describe. I will suggest it, but of the suggestions being discussed, I am arguing more for reroute on error. -- Des NowSMS Support | |||
sam New member Username: Samdsouza Post Number: 39 Registered: 08-2006 |
Thanks a lot Des, Yes Reroute on error would be great. Will test this update of NowSMS and let you know. Regards Sam | |||
sam New member Username: Samdsouza Post Number: 41 Registered: 08-2006 |
Hi Des The user activity ROCKS!!!!!! Great Work. Thanks Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 59 Registered: 08-2006 |
Hi Des Were you able to work out something for Reroute on error? I haven't forgotten about the rerouting of rejected messages. The dilemma is how to implement. The easiest way would be a route specific setting that indicates a fail over route to attempt for rejected messages. We would requeue the rejected message with an explicit routing hint for the other route. My concern is what if this other route was preferred for some messages and had a fail over reject route for the first route. We woukd have to track all attempted routes to prevent a circular rerouting, or we only allow a single reroute. Only allowing a single reroute would be the easy option ... do you think that would be sufficient? Kindly let me know Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3885 Registered: 08-2008 |
Hi Sam, Sorry for taking so long to respond. We had to revisit this issue. Sometimes the ideas that start off simple get overly complicated in design. As a result the idea was put on the back burner. But I took this thread back for some more internal discussion, and the concept as you quoted back is actually quite simple to implement. We are testing an update that includes this. I don't have an ETAyet, but the idea is that each connection will support a ReRouteOnError= parameter, so if a message fails, the message will be rerouted for processing over the other connection. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 60 Registered: 08-2006 |
Thanks Des for your reply. Looking forward to this update. Thanks once again | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3892 Registered: 08-2008 |
Hi Sam, An update with this capability has been posted at http://www.nowsms.com/download/nowsms20120404.zip. * Add a configuration setting where if a message fails or is rejected by an SMSC connection, it will be rerouted to be sent via a different SMSC connection. To enable this setting, under the SMSC specific section header of SMSGW.INI (e.g., [SMPP - server:port] or [Modem - modem driver name]), add ReRouteOnError=xxxxxx, where xxxxxx is the route name for a different SMSC connection. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 61 Registered: 08-2006 |
Excellent Stuff Des...I assume we can specify multiple errors in the setting? ex: ReRouteOnError=123,256 Will test this and update. Thanks once again. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3899 Registered: 08-2008 |
Hi Sam, Not exactly. The ReRouteOnError setting accepts a single value only, that being the destination route to which the message should be rerouted. This is triggered by any message rejection error. Of course, by default, for most rejection error codes, NowSMS retries multiple times before considering the sending attempt to be a failure. This version adds support for considering some modem error codes to signal a permanent error that should not be retried. For SMPP, this would be controlled by existing settings (SMPPRejectErrorCodes). -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 62 Registered: 08-2006 |
Hi Des Regrets for the delay. Actually that was my mistake. I didnt see the route name in the setting. I thought that was error codes. One thing am still not clear. Lets say i got 2 SMPP connections defined. Both have the same routing configuration. For ex: RouteName=Route1 RoutePrefOnly=Yes Route1=44* Route2=+44* ReRouteOnError=Route2 RouteName=Route2 RoutePrefOnly=Yes Route1=44* Route2=+44* Now in the above scenario messages rejected on Route 1 will get routed to Route 2. This is prefect. But regular messages will also get passed via Route 2 isnt? I mean non rejected messages? I believe Route 2 should only be used as a ReRoute Only. That is only for rejected messages. Would appreciate your inputs on this. Thanks once again Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3913 Registered: 08-2008 |
Hi Sam, For Route2, leave RoutePrefOnly=Yes (corresponds to "Support any outbound message traffic" UNchecked), but remove the Route1 and Route2 prefixes (corresponds to "Preferred SMSC Connection For" list empty). Route2 will only be used if a message is explicitly routed to it. If the message fails on Route1, the ReRouteOnError will explicitly route it to Route2. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 63 Registered: 08-2006 |
Thanks Des Thats perfect. Thanks for your inputs. So lets say i want to re-route on error code 434 to the second connection. That means i shouldnt have the following error code defined in the smsgw file right? SMPPRejectErrorCodes=434 If SMPPRejectErrorCodes is defined then it wont be re-routed to other route and the sms will be treated as rejected isnt? Kindly let me know Thanks once again Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 3933 Registered: 08-2008 |
Hi Sam, Sorry for the delay in response. Let me try to clarify. ReRouteOnError is triggered when a message is considered as "failed" with no further retries allowed. For most error conditions, NowSMS performs retry attempts. However, some SMPP error codes are considered permanent failures, not to be retried. SMPPRjectErrorCodes=434 would cause the 434 error code to be considered a permanent error, not to be retried. If ReRouteOnError was also specified, a 434 error would result in the message being immediately rerouted for processing by the other connection. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 64 Registered: 08-2006 |
Hi Des Thanks a million. This clarifies it. Will touch base again after testing if required. Thanks once again for your time. Highly appreciated. Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 67 Registered: 08-2006 |
Hi Des I tested this out and was not able to reroute. I got the following routing defined; RouteName=Route1 RoutePrefOnly=Yes Route1=44* Route2=+44* ReRouteOnError=Route2 RouteName=Route2 RoutePrefOnly=Yes On Route1 when the message is rejected or failed i get this in the DLR: stat:REJECTD err:435 This message should be routed to Route2 but it doesnt get routed at all. I dont see anything in the logs whcih would suggest that messages got re-routed. Can you kindly check this. Regards Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4099 Registered: 08-2008 |
Hi Sam, I'm sorry, but I'm still looking into this. The new ReRouteOnError setting does not seem to be working for SMPP connections. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 76 Registered: 08-2006 |
Thanks for your reply Des...awaiting your inputs when you fix this. Thanks once again Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 84 Registered: 08-2006 |
Hi Des Tested nowsms 20121004 and it does re-route on SMPP. Thanks for this. But got an issue. You had mentioned this: For Route2, leave RoutePrefOnly=Yes (corresponds to "Support any outbound message traffic" UNchecked), but remove the Route1 and Route2 prefixes (corresponds to "Preferred SMSC Connection For" list empty). Route2 will only be used if a message is explicitly routed to it. If the message fails on Route1, the ReRouteOnError will explicitly route it to Route2. But the above doesnt work. I need to specifiy the routing to get the re-reroute to work. Else the message doesnt get routed at all. Would appreciate your inputs on this issue. Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4132 Registered: 08-2008 |
Hi Sam, I will investigate. It should work without the prefixes defined. -- Des NowSMS Support | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4148 Registered: 08-2008 |
Hi Sam, Apologies for the delay in response, but I have been unable to recreate any problem. At least not like you describe. But maybe this is it. If the message was originally submitted with SMSCRoute=Route1 (or an accounting callback sets this route), then ReRouteOnError=Route2 will not work. If you're routing based upon prefixes, I don't see any problem. We are investigating how to fix the problem for the scenario that I described, but I am not sure if you may be encountering a different issue??? -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 87 Registered: 08-2006 |
Hi Des This is the routing i have: RouteName=Route1 RoutePrefOnly=Yes Route1=44* Route2=+44* ReRouteOnError=Route2 RouteName=Route2 RoutePrefOnly=Yes Route1 is the base route where all messages will be routed through. In case of failure it should get routed on Route2. I tested using the web interface. There was no SMSCRoute=Route1 or an accounting callback sets this route. The message got first routed to Route1 and it got a reject DLR. But it does not get routed to Route2 as it should. It get routed only with the following routing: RouteName=Route1 RoutePrefOnly=Yes Route1=44* Route2=+44* ReRouteOnError=Route2 RouteName=Route2 RoutePrefOnly=Yes Route1=44* Route2=+44* But in the above scenario regular messages also get routed via Route2. I just want Route2 to be used as a backup route. Used only as a failover route for Route1. Would you like to see any logs? Kindly let me know. Thanks Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 88 Registered: 08-2006 |
Hi Des Maybe we can use AllowedUserOnly setting and set this on the Route2 and that allowed user will be system only and not nowsms user? Kindly let me know. Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4149 Registered: 08-2008 |
Hi Sam, I think I need to see an SMSDEBUG.LOG. There's something I'm missing, I'm just not sure what. If you don't want to post it here, e-mail to nowsms@nowsms.com with Attention: Des in the subject line. -- Des NowSMS Support | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4150 Registered: 08-2008 |
Never mind. I've now recreated the problem. We are working on getting this feature implemented to work in all scenarios. | |||
sam Frequent Contributor Username: Samdsouza Post Number: 89 Registered: 08-2006 |
Thanks a lot..looking forward to the fix. Thanks once again. Your time on this is highly appreciated. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4158 Registered: 08-2008 |
Hi Sam, The ReRouteOnError issue should finally be addressed in the update at http://www.nowsms.com/download/nowsms20121018.zip -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 91 Registered: 08-2006 |
Perfect Des...You guys rock!!!! Just one thing i noticed. If i have defined a Forced Sender Address for the particular account submitting the smses and this account sends with another senderID then the re-route doesnt happen. Can this be kindly checked. Else Its working absolutely great. Thanks for your time on this. Highly appreciated. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4166 Registered: 08-2008 |
Hi Sam, What happens in that scenario? Does the message fail on errors or get stuck in the queue? When the message gets re-routed, its queue file gets updated with SMSCRoute=routename, so that it will be forced to the ReRouteOnError route. Because the routing is explicit, the forced sender is not a factor once the message has been re-routed. I've run a few tests, and I've yet to see an issue. Could there be another factor in your configuration? Does the SMSDEBUG.LOG show a ReRouteOnError= statement when the initial error occurs? -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 95 Registered: 08-2006 |
Hi Des The message didnt get stuck in the Q. Got the rejected DLR on the main route. Tried testing it today but it seems i cant get the reroute on error working today on the same nowsms installation. In SMSDEBUG.LOG i dont see any records of a ReRouteOnError= entry at all. I dont understand why it was working yesterday when i tested. Following is my routing. Am i making some kind of mistake in the SMPP connection: 1. Main Route RouteName=main WindowSize=50 SMPPVersion=v3.4 UserName=XXXX Password=XXXX SenderAddress=Demo SenderAddressOverride=Yes DefaultDelReceipt=Yes TrackSMPPReceipts=main Receive=Yes ReceiveMMS=No UseSSL=No LongSMSAlt=Yes RoutePrefOnly=Yes ReRouteOnError=backup Route1=44* Route2=+44* 2. Backup Route RouteName=backup WindowSize=50 SMPPVersion=v3.4 UserName=XXXX Password=XXXX SenderAddress=Demo SenderAddressOverride=Yes DefaultDelReceipt=Yes TrackSMPPReceipts=backup Receive=Yes ReceiveMMS=No UseSSL=No LongSMSAlt=Yes RoutePrefOnly=Yes [SMSGW] ReceiveSMS=Yes ReceiveMMS=No PHPEnable=No PHPAllowRemote=No ReceiptRequested=Yes SMPPDataRetainDays=3 SMPPThrottleErrorDelay=0 Debug=Yes ReceiveSMSCharset=utf-8 SeparateUserQueues=Yes SMPPRjectErrorCodes=436 [SMPP] DeliveryReceiptFlag=Yes Any pointers on whats wrong in my smpp setup? Kindly let me know Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4172 Registered: 08-2008 |
Hi Sam, There is a misspelling in SMPPRjectErrorCodes (missing e in Reject), which may be causing more retries before the message takes the error route. When the error condition occurs, NowSMS looks to see if a ReRouteOnError condition exists for the connection. If NowSMS cannot determine that the error route matches a defined route, the message will fail on errors, and in the SMSDEBUG.LOG, you'll see an entry like this: 10:16:25:634 [31] ValidateSMSCRoute: Unknown smscRoute=XXXXX If the error route is valid and the message is rerouted, you'll see an entry like this: 10:24:54:684 [31] ThreadProcessModem: ReRouteOnError=XXXXXX So my question would be whether or not you are seeing either of these as the message is processed. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 100 Registered: 08-2006 |
Hi Des For the love of God i cant get this to work. I fixed the spelling mistake (Thanks for pointing this out) but no change. I am not seeing ReRouteOnError in the smsdebug log at all. Do i need to enable 2 way sms setting for this to work? Do i need to place ReRouteOnError in any specific order in the SMPP connection? Any other pointers would kindly help. Regards Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 101 Registered: 08-2006 |
Hi Des Anything to do with UseRouteCache=Yes in smsgw settings or Receive=Yes setting in the SMPP connection? Some kind of clash? Kindly let me know Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4180 Registered: 08-2008 |
Hi Sam, Why don't you e-mail me the full SMSGW.INI and I'll try the same exact settings against my servers. Also send me an SMSDEBUG.LOG that includes the message failing ... and the SMSOUT-yyyymmdd.LOG too. Are there only those two routes defined? I'm wondering if another route is detecting the message retry expiration (or are you testing a particular SMPP reject code). The SMSOUT log should record which connection failed the message. No other settings should be involved. Right before we fail the message (and generate non-DLR if applicable), we check for ReRouteOnError setting. If present, SMSDEBUG.LOG would record one of the two entries that I mentioned above. If no ReRouteOnError setting, the message goes to failed state. It seems the ReRouteOnError setting is not being detected, or another connection is also trying to process the message. Maybe I'll see something else in the logs or INI file. -- Des NowSMS Support | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4181 Registered: 08-2008 |
P.S. - email to nowsms@nowsms.com with Attention: Des in the subject line. | |||
sam Frequent Contributor Username: Samdsouza Post Number: 102 Registered: 08-2006 |
Hi Des The SMSGW.ini is the same as i pasted before. And there is nothing in the SMSDEBUG.LOG and SMSOUT.LOG too. After re-reading this multiple times I think the issue might be that in my case/scenario the sms message doesnt go into a failed state. I mean no .err files created and nothing in the Q folder. I submit a message and the upstream SMPP connection gives me a DLR. That means the message was accepted by the main upstream connection. So i guess as the sms message is accepted succesfully and hence it wont be retried on the backup route. What i was looking for is if the DLR has a stat as rejected can this messages be routed to the backup route using the ReRouteOnError setting? For ex: sub:001 dlvrd:000 submit date:1210301343 done date:1210301343 stat:REJECTD err:435 I believe what you are saying is that ReRouteOnError setting will only work if the message gets stuck in the Q folder with .err extension right? Kindly let me know Thanks Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 103 Registered: 08-2006 |
Hi Des My sincere apologies for wasting your time on this. I got confused totally. ReRouteOnError works perfectly fine. Thanks for this feature. Appreciate your time on this. Regards Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 105 Registered: 08-2006 |
Hi Des One last thing on this. ReRouteOnError is ignoring AllowedUserOnly=Yes settings. Is this kind of scenario possible for the backup route: AllowedUserOnly=Yes AllowedUser1=localsystem-mmsc Dont want NowSMS users to access the backup route. Only the system should access it. Kindly let me know Regards Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4183 Registered: 08-2008 |
Hi Sam, It is designed to bypass the AllowedUser settings. Or maybe I am not understanding the question. -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 106 Registered: 08-2006 |
Hi Des Thanks for your reply. When i initially suggested ReRouteOnError settings i had only SMS thing in mind. Lets say i got 2 routes. The main route costs me lets say 1.0 pence and the backup route costs me 2.0 pence. In the current scenario if ReRouteOnError is used it would first send the message on the main route and if rejected will route it to backup route. But passing on backup route would cost me more. So if i had ReRouteOnError respecting the AllowedUser settings then i could define the users who would pay for the backup route to actually use the backup route while submitting their messages. If the user is only paying 1.0 pence then he wont be allowed to use the backup route. This got me thinking about how it would behave for the MMS part. Lets say I want only the MMSusers defined on NowSMS who would be sending mmses from their handsets to access the backup route. So theoretically i would have to define the following to AllowedUser settings for the mmsc system to access the backup route: AllowedUser1=localsystem-mmsc And if a user is submitting MMS via the web interface of NowSMS (for which we need to define a sms user) then my initial suggestion of ReRouteOnError respecting the AllowedUser settings would resolve the issue. Though if a VASP is submitting the messsages then i dont know how would NowSMS make it respect the AllowedUser settings. I mean i dont want VASP to access the backup route unless defined somewhere. Do you think above is logical? What i am suggesting is there should be some kind of control over who access the backup route if ReRouteOnError is enabled. Kindly let me know Thanks Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4189 Registered: 08-2008 |
Hi Sam, I've been giving this some thought ... My opinion is that the scenario you describe would probably be best handled through the use of routing callbacks. Well, an extension to the routing callback logic at least. My idea would be that when the message reaches a failed state, a routing callback would occur. In addition to the message details, it would contain the error details. The callback response could then decide whether to reroute the message and specify which route to use. That said, I haven't done any analysis of how this fits into the existing callback logic. For example, does it need to be a new callback or could the accounting callback that reports the failure accept a rerouting directive? I need to discuss those specifics with our engineering team. What do you think? -- Des NowSMS Support | |||
sam Frequent Contributor Username: Samdsouza Post Number: 107 Registered: 08-2006 |
Hi Des Thanks for your reply. Its highly appreciated. I have never checked the routing callback feature of NowSMS. I would be checking your support forums to understand this feature and then would update you. Can you kindly point me to some documentation which would have accounting/routing callbacks details? Some kind of links which would have detailed documentation of callbacks. Also I was checking the support blog section at http://www.nowsms.com/category/supportblog The issue is with the navigation of support blogs. Can you kindly put some widget there which would list the titles of all the support blogs so it would be easier to navigate to the specific support blog. Thanks once again. Sam | |||
sam Frequent Contributor Username: Samdsouza Post Number: 109 Registered: 08-2006 |
Hi Des Have gone through the routing callbacks and I think would be fine if the situation i describe can be handled by routing callbacks. Having said that i have never actually implemented an external routing call back. Frankly would prefer if nowsms handles the situation on its own without the need for call backs. After having gone through the routing callbacks in forums and docs i find mostly people using it for pricing/cost of sms or routing an sms to a specific route based on some specific condition mostly. I would have loved if nowsms can handle this "inhouse" as i should put it. For example the pricing callback. That is using the accounting callback to monitor/adjust price per sms. Currently Nowsms assumes the price/cost per sms is the same. That is the balance is per sms in user accounts. This balance should be value wise and not per sms wise. Lets say you have a pricing.ini for nowsms. This would have the country codes or operator codes and the associated pricing. And the user balance is value wise. Then when the outgoing sms is sent nowsms checks this pricing.ini and deducts the balance from the nowsms users account value wise. Or how about having some kind of callback.ini file and the conditions/settings are defined there itself. Does it sound logical? Thanks for your time on this. Sam | |||
Des - NowSMS Support Board Administrator Username: Desosms Post Number: 4214 Registered: 08-2008 |
Hi Sam, Because of MNP (Mobile Number Portability), routing and pricing is not always so clear cut. We have investigated the possibility of allowing the SMSOut accounting callback to accept a ReRouteOnError= response directive when a message has failed. It appears that we could process this response as an alternative to the ReRouteOnError= INI file parameter. I am still working on trying to get this into the engineering schedule. -- Des NowSMS Support |