Avatar billede para7 Nybegynder
06. december 2008 - 10:44 Der er 8 kommentarer og
1 løsning

SMS forsendelse

Jeg har ikke fundet nogen relevante spm undtagen en gammel http://www.eksperten.dk/spm/288599

Nogen der har en opskrift, gerne hvor man kan sætte det ind i eksisterende jMail script.
Avatar billede leif Seniormester
06. december 2008 - 10:45 #1
Jmail script er det ikke noget med Mail ?

Hvorfor ikke lave en HTTP request til den udbyder som du har valgt at bruge ?
Avatar billede para7 Nybegynder
06. december 2008 - 11:00 #2
jMail er mailforsendelse med W3 Jmail scriptet. Jeg ved ikke lige hvad HTTP request er og hvad det er for en udbyder du mener?
Avatar billede keysersoze Guru
06. december 2008 - 11:35 #3
Du kan ikke længere sende emails der bliver modtaget som SMS - skal du sende SMS er du nødt til at få adgang gennem en SMS gateway, se fx http://dandomain.dk/SMSGateway/default.asp
Avatar billede para7 Nybegynder
06. december 2008 - 17:51 #4
OK, tak keysersoze, det koster altså i forbrug. Så man skal vel bruge det en del gange om måneden for at det betaler sig. Men så er det også OK.
Avatar billede para7 Nybegynder
06. december 2008 - 17:56 #5
Eksempelkoden fra Dandomain her skal vel egentlig bare puttes ind på en jMail sende side og opfange de et par variabler.

Det er et reservationssystem, hvor, når der er foretaget en bestilling, bliver fremsendt en mail til administrator. Og derudover så en SMS til administrators mobilnummer.

Ser det ladesiggøreligt nok ud?


Kode til siden:

<%
Dim ListID
Dim Username, Password

'##############################################
'//Login til SMS gateway - brugernavn\\
username    = ""
'//Login til SMS gateway - password\\
password    = ""
'//Login til SMS gateway - tilmeld listid\\
ListID        = ""
'##############################################

SubscribeErrorMessage = ""

Private Function HTMLDecode(byVal encodedstring)
    Dim tmp, i
    tmp = encodedstring
    tmp = Replace( tmp, "&quot;", chr(34) )
    tmp = Replace( tmp, "&lt;"  , chr(60) )
    tmp = Replace( tmp, "&gt;"  , chr(62) )
    tmp = Replace( tmp, "&amp;" , chr(38) )
    tmp = Replace( tmp, "&nbsp;", chr(32) )
    For i = 1 to 255
        tmp = Replace( tmp, "&#" & i & ";", chr( i ) )
    Next
    HTMLDecode = tmp
End Function

if request("action") = "add" then
    DataIsValid = true
    phone    = request("phone")
   
    if phone = "" then
        DataIsValid = false
        response.write "Udfyld mobil-nr."
    end if
   
    if LEFT(phone, 3) <> "+45" then
        phone = "+45" & phone
    end if

    if DataIsValid then
        Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
        objXMLHTTP.open "post", "http://sms.dandomain.dk/services/injectionservice.asmx", False, "", ""
       
        strMethodPkg = ""
        strMethodPkg = strMethodPkg & "<?xml version=""1.0"" encoding=""utf-8""?>"
        strMethodPkg = strMethodPkg & "<soap:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"">"
        strMethodPkg = strMethodPkg & "  <soap:Header>"
        strMethodPkg = strMethodPkg & "    <AuthInfo xmlns=""http://www.dandomain.dk/SmsGateway"">"
        strMethodPkg = strMethodPkg & "      <Username>"&username&"</Username>"
        strMethodPkg = strMethodPkg & "      <Password>"&password&"</Password>"
        strMethodPkg = strMethodPkg & "    </AuthInfo>"
        strMethodPkg = strMethodPkg & "  </soap:Header>"
        strMethodPkg = strMethodPkg & "  <soap:Body>"
        strMethodPkg = strMethodPkg & "    <CreateSubscriber xmlns=""http://www.dandomain.dk/SmsGateway"">"
        strMethodPkg = strMethodPkg & "      <sublistid>"&ListID&"</sublistid>"
        strMethodPkg = strMethodPkg & "      <subscriberinfo>"
        strMethodPkg = strMethodPkg & "        <Id>0</Id>"
        strMethodPkg = strMethodPkg & "        <Number>"&phone&"</Number>"
        strMethodPkg = strMethodPkg & "        <Active>true</Active>"
        strMethodPkg = strMethodPkg & "      </subscriberinfo>"
        strMethodPkg = strMethodPkg & "    </CreateSubscriber>"
        strMethodPkg = strMethodPkg & "  </soap:Body>"
        strMethodPkg = strMethodPkg & "</soap:Envelope>"
       

        objXMLHTTP.setRequestHeader "Content-Type", "text/xml"
        objXMLHTTP.setRequestHeader "SOAPAction", "http://www.dandomain.dk/SmsGateway/CreateSubscriber"
        objXMLHTTP.send strMethodPkg
        XMLOutput = HTMLDecode(objXMLHTTP.responseText)
        Statuscode = objXMLHTTP.status
        if objXMLHTTP.status <> "200" then
            IsValid = False
        end if
        Set objXMLHTTP = Nothing
       
        if IsValid = false then
            Dim oXml, SingleNode
       
            Set oXml = Server.CreateObject("Microsoft.XMLDOM")
            oXml.async = false
            oXml.LoadXML(XMLOutput)
            Set SingleNode = oXml.documentElement.selectSingleNode("soap:Body/CreateSubscriberResponse/CreateSubscriberResult")

            if SingleNode.text = "OK" then
                response.write "Tilmelding OK"       
            else
                response.write "Tilmelding fejlede"
            end if
            Set oXml = Nothing
        end if
    else
   
    end if
end if
%>
Avatar billede keysersoze Guru
06. december 2008 - 18:17 #6
ja - det koster i hvert fald at bruge.

At sende gennem en SMS Gateway har intet med jmail eller andre mail-komponenter at gøre - eksempel-koden er den færdige kode (pånær login-oplysninger) såfremt Microsoft.XMLDOM er tilgængelig på serveren (hvilket det nok er de fleste steder). Men eksemplet du har fanget ligner mere et "Tilmeld mobil nummer til modtagerliste" end et "Send SMS til mobil nummer".
Avatar billede keysersoze Guru
06. december 2008 - 18:18 #7
Om det virker tør jeg ikke sige - men dandomain giver faktisk mulighed for at sende en sms via en email, så du burde kunne sætte Jmail til at sende en SMS, så skal du bare bruge samme setup som i deres "Send SMS fra e-mail" eksempel.
Avatar billede para7 Nybegynder
07. december 2008 - 10:56 #8
Tak igen keysersoze. For at sende sms via email akal man vel være kunde hos Dandomain? Og de er langt dyrere, bare for at få et hotel med ASP, end Surftown, hvor jeg netop er flyttet til.
Avatar billede keysersoze Guru
07. december 2008 - 11:15 #9
du kan sagtens nøjes med at købe deres sms-løsning - men dandomain er jo bare en af rigtig mange udbydere, se fx også mobilemarketing, wannafind og stadel eller søg på sms gateway på google. Det er vidt forskelligt hvad og hvordan de forskellige udbydere tilbyder.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester