Announcement Announcement Module
Collapse
No announcement yet.
Any road map for an integration with a call based api like Gtalk call or skype? Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Any road map for an integration with a call based api like Gtalk call or skype?

    Hi,
    I would like to see if an integration with an audio based channel to alert people with information is anywhere on the anvil. The use case is to alert support teams via all the different channels with as much information as possible for them to be able to take action. For this purpose, I would first send probably an email and if it is not acknowledged within a specified time limit, the system would send a sms to the registered phone number and if still not acknowledged within a limited time, need to make a call. The call should be termed as acknowledged if it is taken and if not, a voice mail is to be sent. Again this is very far off in my design, but would love to hear what your thoughts are on this and if we need to build custom components.

    Thanks,
    Anoop

  • #2
    Hello

    Let me explian some of your points:
    1. Your design looks good: you have several consumers on one channel with some order. Right? You don't say it, so I show you some sample:
    HTML Code:
            <channel id="alertChannel">
    		<dispatcher load-balancer="none"/>
    	</channel>
    
    	<mail:outbound-channel-adapter channel="alertChannel" order="1"/>
    
    	<outbound-channel-adapter channel="alertChannel" ref="smsService" method="send" order="2"/>
    
    	<xmpp:outbound-channel-adapter channel="alertChannel" order="3"/>
            ...
    So, as you see we already support mail, xmpp (GTalk, as you want).
    2. About SMS.
    From my practice each GSM-provider may use his own protocol for receiving requests which should be sended as SMS to client's mobile. So, I don't think that we realy can add some adapter for this proposal into framework... However you can write your own service, which you will use as I show on the second adapter.
    3. Skype API.
    It is also some specific individual protocol, which isn't standart and isn't used anywhere outside Skype.
    So, here you also can write your own implementation.
    Spring Integration programming & configuring model is flexible for using anything which can live in the Spring Container and can be reachable for some Spring Integration Endpoint.
    Nevertheless you're free to implement your own protocol adapters and to contribute into Spring Integration.
    Please, read this one: https://github.com/SpringSource/spri...tor-Guidelines
    And try to find something useful in the Samples: https://github.com/SpringSource/spri...ration-samples

    Good luck,
    Artem Bilan

    Comment


    • #3
      Hi Artem,
      Thank you for your response. Let me explain my scenario a little more succinctly:

      Yes, we will have several consumers on one channel. But each of them are escalation points if they are not acknowledged. For eg a Sev1 issue happened then the following actions would take place:
      a) An email is sent to the registered person with the details of the exception etc along with a link to acknowledge it. If he clicks the link, it saves a token (say the username of person on call with details of time, channel of acknowledgement) into a database for audit and also marks the Sev1 as in progress in an internal system.
      b) In case the email fails to be acknowledged in a predefined time (say 5 mins), a message is sent via SMS to the persons, mobile phone that is registered in the system along with the link for acknowledgement to a list of persons.
      c) In case the SMS fails to be acknowledged in the predefined time, we need to make a call to the persons mobile. I was thinking if we could leverage the call to phone feature withing GTalk and not the xmpp message. We can have an automated message run on the call with the users appraising them of a Sev1. And is the phone is picked up , the message can be termed as acknowledged, else should put a voice mail.


      We can use filters along with a delayer and jdbc poller to effect a timely escalation. My question was more with regard to the adapters for SMS and doing a phone call via GTalk or for that matter any other free service?
      I take it that we do not have a specific SMS adapter. Thats fine, will try to build one to my requirement.

      Again, thanks for your timely response as always!

      Anoop





      Originally posted by Cleric View Post
      Hello

      Let me explian some of your points:
      1. Your design looks good: you have several consumers on one channel with some order. Right? You don't say it, so I show you some sample:
      HTML Code:
              <channel id="alertChannel">
      		<dispatcher load-balancer="none"/>
      	</channel>
      
      	<mail:outbound-channel-adapter channel="alertChannel" order="1"/>
      
      	<outbound-channel-adapter channel="alertChannel" ref="smsService" method="send" order="2"/>
      
      	<xmpp:outbound-channel-adapter channel="alertChannel" order="3"/>
              ...
      So, as you see we already support mail, xmpp (GTalk, as you want).
      2. About SMS.
      From my practice each GSM-provider may use his own protocol for receiving requests which should be sended as SMS to client's mobile. So, I don't think that we realy can add some adapter for this proposal into framework... However you can write your own service, which you will use as I show on the second adapter.
      3. Skype API.
      It is also some specific individual protocol, which isn't standart and isn't used anywhere outside Skype.
      So, here you also can write your own implementation.
      Spring Integration programming & configuring model is flexible for using anything which can live in the Spring Container and can be reachable for some Spring Integration Endpoint.
      Nevertheless you're free to implement your own protocol adapters and to contribute into Spring Integration.
      Please, read this one: https://github.com/SpringSource/spri...tor-Guidelines
      And try to find something useful in the Samples: https://github.com/SpringSource/spri...ration-samples

      Good luck,
      Artem Bilan

      Comment


      • #4
        Hi,
        Anybody got any suggestions? Would appreciate input from the Spring Integration team !

        Thanks,
        Anoop

        Comment


        • #5
          There is a 'spring-integration-smpp' project in our old sandbox repo:
          http://git.springsource.org/spring-integration/sandbox/

          It probably needs some attention, but maybe you can check it out and see if it's at least in the direction of what you need. We'd like to hear your feedback on that since we may want to escalate that from the sandbox at some point.

          Comment


          • #6
            Thanks Mark! Will take a look at the sandbox project. But I would be more interested in case you have one a gateway to call a phone through any means via the internet like Google voice, Skype etc. I will do my part of the research as well and thank you for this wonderful framework!
            Last edited by anoop2811; May 20th, 2012, 10:57 AM.

            Comment


            • #8
              Hey David,
              Thank you, that was news for me. Thanks for all the help!

              Anoop

              Comment


              • #9
                We decided to go with David's suggestion for now by binding to an outbound mail adapter due to lack of resource and time. But we would evaluating the smpp project as soon as we have some slack. Just wanted to update that the smpt equivalent worked for the carrier we were interested in. Thanks again guys!

                Comment

                Working...
                X