it-swarm.com.de

So füllen Sie den Text des SMS-Textes über einen HTML-Link vorab aus

Wie verwende ich einen HTML-Link, um die SMS-App mit einem vorgefüllten Body zu öffnen?

Alles, was ich gelesen habe, scheint darauf hinzuweisen, dass SMS: 18005555555? Body = bodyTextHere

Sollte funktionieren, aber auf dem iPhone funktioniert das nicht. Wenn ich das? Body = bodyTextHere herausnehme und einfach sms: Telefonnummer verwende, funktioniert es.

Ich habe mehrere Fälle gesehen, in denen QR-Codes dies über einen Safari-Link tun. Wie können sie den Haupttext vorab füllen?

86
merlincam

Es stellt sich heraus, dass dies zu 100% möglich ist, wenn auch ein bisschen hackig. 

Wenn Sie möchten, dass es mit Android funktioniert, müssen Sie dieses Format verwenden:

<a href="sms:/* phone number here */?body=/* body text here */">Link</a>

Wenn Sie möchten, dass es mit iOS funktioniert, benötigen Sie Folgendes:

<a href="sms:/* phone number here */;body=/* body text here */">Link</a>

Live-Demo hier: http://bradorego.com/test/sms.html (Beachten Sie, dass "Telefon und Körper" und "Telefon und Körper" sowohl das Feld als: als auch den Körpertext automatisch ausfüllen sollen. Ansicht die Quelle für weitere Informationen)

UPDATE:

Anscheinend musste iOS8 die Dinge an uns ändern und dank einiger Kommentatoren/Responder gibt es einen neuen Stil für iOS:

<a href="sms:/* phone number here */&body=/* body text here */">Link</a>

(Telefonnummer ist optional)

152
Bradley Orego

Ich weiß, dass dies ein alter Faden ist, aber darauf gestoßen ist und festgestellt hat, dass einige Teile nicht mehr relevant sind.

Ich habe festgestellt, dass Sie Folgendes tun können, wenn Sie den Text nur per E-Mail füllen möchten, ohne eine Telefonnummer hinzuzufügen.

sms:?&body=/* message body here */
39
Ali

Versuchen Sie Folgendes für iOS 8:

<a href="sms:/* phone number here */&body=/* body text here */">Link</a>

Umschalten des ";" mit einem "&" arbeitete für mich.

37
landen

Setzen Sie einfach alle Symbole in diese Reihenfolge (ich habe es nur in dieser Reihenfolge getestet, da es für mich am sinnvollsten ist). 

Hinweis für den Body-Link ... Ich habe nur ... ;?&body=. Beachten Sie auch, dass ich festgestellt habe, dass ich %20 für Leerzeichen verwenden musste. 

Ich habe es auf meinem iPhone (Version 9.2) und einem anderen Android getestet und es funktioniert einwandfrei.

Dies löst das Problem, indem Sie es für verschiedene Geräte hacken müssen. Ich habe keine Artefakte, als ich es in der SMS getestet habe.

<a href="sms:19131234567;?&body=Question%20from%20mywebsite.com.%20%20MY%20MESSAGE%20-%20" title="Click here to TEXT US gallery token needs updating!">Send me SMS</a>
25
Nathan Sharfi

Wir haben eine vorgeschlagene Methode gefunden und getestet:

<a href="sms:12345678?body=Hello my friend">Send SMS</a>

Hier sind die Ergebnisse:

  • iPhone4 - Fehler (leerer Nachrichtentext); 
  • Nokia N8 - ok (Nachrichtentext - "Hallo mein Freund", An "12345678");
  • HTC Mozart - Fehler (Nachricht "nicht unterstützte Seite" (nach dem Klicken auf den Link "SMS senden"));
  • HTC Desire - Fehler (Nachricht "Ungültige Empfänger):
    <12345678? Body = Hellomyfriend> "(nach Anklicken des Links" SMS senden ")).

Ich schließe daraus, dass es nicht wirklich klappt - zumindest mit dieser Methode.

10
Ben
<a href="###" data-telno="13800000000" data-smscontent="hello" class="XXXXX XXXXXX XXXXXX sendsms"/>

$('.sendsms').on('click', function(){
    var p = $(this).data('telno'),
        c = $(this).data('smscontent'),
        t = ';';

    if (!ios) { // add your own iOS check
        t = '?';
    }
    location.href = 'sms:'+ p + t + c;
})
4
hkongm

Es sind keine zwei separaten Ankertags für Android und iOS erforderlich. Dies sollte helfen.

// Ohne Kontaktnummer
<a href="sms:?&body=message">Text Message</a>

// Mit Kontaktnummer
<a href="sms:1234567890;?&body=message">Text Message</a>

// Funktioniert sowohl für Android als auch für iOS 

3
aayushdrolia

Um sms: und mailto: Links zu erhalten, die sowohl auf dem iPhone als auch auf Android ohne Javascript funktionieren, versuchen Sie Folgendes:

<a href="sms:321-555-1111?&body=This is what I want to sent">click to text</a>


<a href="mailto:[email protected]?&subject=My subject&body=This is what I want to sent">click to email</a>

Ich habe es auf Chrome für Android & iPhone und Safari auf dem iPhone getestet.
Sie arbeiteten alle wie erwartet. Sie arbeiteten auch ohne die Telefonnummer oder E-Mail-Adresse.

3
Debbie V

Das iPhone akzeptiert keinen Nachrichtentext, sondern nur die Telefonnummer. Sie können dies hier sehen https://developer.Apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/SMSLinks/SMSLinks.html#//Apple_ref/doc/uid/TP40007899-CH7-SW1

3
A. Z.

Die Lösung von Bradorego hat für mich funktioniert, aber hier ist die Antwort ausführlicher.

Eine kleine Überlegung ist, dass Sie den Body mit %20 anstelle von + codieren müssen. Für PHP bedeutet dies die Verwendung von rawurlencode($body) anstelle von urlencode($body). Ansonsten werden in der Nachricht in älteren Versionen von iOS Pluszeichen anstelle von Leerzeichen angezeigt.

Hier ist eine jQuery-Funktion, mit der Ihre SMS -Links für iOS-Geräte angepasst werden. Android/andere Geräte sollten normal funktionieren und den Code nicht ausführen.

HTML:

<a href="sms:+15551231234?body=Hello%20World">SMS "Hello World" to 555-123-1234</a>

jQuery:

(function() {
  if ( !navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ) return;

  jQuery('a[href^="sms:"]').attr('href', function() {
    // Convert: sms:+000?body=example
    // To iOS:  sms:+000;body=example (semicolon, not question mark)
    return jQuery(this).attr('href').replace(/sms:(\+?([0-9]*))?\?/, 'sms:$1;');
  });
})();

Erwägen Sie, wenn möglich, eine Klasse wie a.sms-link anstelle von a[href^="sms:"] zu verwenden.

3
Radley Sustaire

Nun, Sie müssen sich nicht nur um iOS und Android kümmern, es gibt auch welche Android Messaging App. Die Google Messaging-App für Note 9 und einige neue Galaxien öffnen sich nicht mit Text, aber die Samsung-App funktioniert. Die Lösung scheint // nach der SMS zu sein:

also sms: // 15551235555

<a href="sms:/* phone number here */?body=/* body text here */">Link</a>

sollte sein

<a href="sms://15551235555?body=Hello">Link</a>
2
Dan Parker

Ich vermute in den meisten Anwendungen, dass Sie nicht wissen, an wen Sie einen Text schreiben sollen. Sie möchten also nur den Textkörper ausfüllen, nicht die Zahl. Das funktioniert wie erwartet, wenn Sie einfach die Nummer weglassen. So sehen die URLs in diesem Fall aus:

sms:?body=message

Für iOS dasselbe außer mit dem;

sms:;body=message

Hier ist ein Beispiel für den Code, den ich zum Einrichten der SMS verwende:

var ua = navigator.userAgent.toLowerCase();
var url;

if (ua.indexOf("iphone") > -1 || ua.indexOf("ipad") > -1)
   url = "sms:;body=" + encodeURIComponent("I'm at " + mapUrl + " @ " + pos.Address);
else
   url = "sms:?body=" + encodeURIComponent("I'm at " + mapUrl + " @ " + pos.Address);

   location.href = url;
1
Lemon Kazi

Für die Verwendung von Android verwenden Sie den folgenden Code

<a href="sms:+32665?body=reg fb1>Send SMS</a>

Für iOS können Sie den folgenden Code verwenden

<a href="sms:+32665&body=reg fb1>Send SMS</a>

der folgende Code funktioniert sowohl für iOS als auch für Android

<a href="sms:+32665?&body=reg fb1>Send SMS</a>
1
Pankaj Chauhan
<a href="sms:/* phone number here */&body=/* body text here */">Link</a>

Das funktioniert auf meinem iPhone 5S!

1
Kim

Jede OS-Version hat einen anderen Weg. Schauen Sie sich die sms-link-Bibliothek an

0
Ghigo

(Nur ein kleines Thema), aber wenn Sie suchen, könnten Sie hier stolpern ... In Markdown (getestet mit parsedown und auf iOS/Android) könnten Sie Folgendes tun:

   [Link](sms:phone_number,?&body=URL_encoded_body_text)
   //[send sms](sms:1234567890;?&body=my%20very%20interesting%20text)
0
user6200044

Ich habe herausgefunden, dass Sie auf iPhone 4 mit IOS 7 nur dann einen Körper an SMS setzen können, wenn Sie in der Kontaktliste des Telefons eine Telefonnummer festgelegt haben.

Folgendes funktioniert also, wenn 0606060606 Teil meiner Kontakte ist:

<a href="sms:0606060606;body=Hello my friend">Send SMS</a>

Auf iOS 6 (iPhone 3GS) funktioniert es übrigens nur mit einem Körper:

<a href="sms:;body=Hello my friend">Send SMS</a>
0
paaacman

Ein Problem bei einem Klick-zu-Text-Link besteht in der Lösung des Desktopszenarios, in dem keine native Textanwendung vorhanden ist. Eine Lösung besteht darin, die Click-to-Text-Schaltfläche von Zipwhip zu verwenden. 

  • Sie senden Ihnen auf dem Desktop eine tatsächliche reale Textnachricht hinter den Kulissen der Benutzereingaben. 
  • Unter iOS oder Android erhalten Sie stattdessen die native Textfunktionalität.

https://www.zipwhip.com/create-sms-button/

0
John Lauer