亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gsmsendsms.c

?? 一個關于GSM手機短信的程序源碼,用C++編寫的,與大家分享,希望對大家有幫助.
?? C
字號:
// *************************************************************************
// * GSM TA/ME library
// *
// * File:    gsmsendsms.cc
// *
// * Purpose: GSM sms send program
// *
// * Author:  Peter Hofmann (software@pxh.de)
// *
// * Created: 16.7.1999
// *************************************************************************

#ifdef HAVE_CONFIG_H
#include <gsm_config.h>
#endif
#include <gsmlib/gsm_nls.h>
#include <string>
#ifdef WIN32
#include <gsmlib/gsm_win32_serial.h>
#else
#include <gsmlib/gsm_unix_serial.h>
#include <unistd.h>
#endif
#if defined(HAVE_GETOPT_LONG) || defined(WIN32)
#include <getopt.h>
#endif
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <gsmlib/gsm_me_ta.h>
#include <gsmlib/gsm_util.h>
#include <iostream>

using namespace std;
using namespace gsmlib;

// options

#ifdef HAVE_GETOPT_LONG
static struct option longOpts[] =
{
  {"requeststat", no_argument, (int*)NULL, 'r'},
  {"xonxoff", no_argument, (int*)NULL, 'X'},
  {"sca", required_argument, (int*)NULL, 'C'},
  {"device", required_argument, (int*)NULL, 'd'},
  {"init", required_argument, (int*)NULL, 'I'},
  {"baudrate", required_argument, (int*)NULL, 'b'},
  {"test", no_argument, (int*)NULL, 't'},
  {"help", no_argument, (int*)NULL, 'h'},
  {"version", no_argument, (int*)NULL, 'v'},
  {(char*)NULL, 0, (int*)NULL, 0}
};
#else
#define getopt_long(argc, argv, options, longopts, indexptr) \
  getopt(argc, argv, options)
#endif

// convert /r and /n to CR and LF

static string unescapeString(char *line)
{
  string result;
  bool escaped = false;
  int index = 0;

  while (line[index] != 0 &&
         line[index] != CR && line[index] != LF)
  {
    if (escaped)
    {
      escaped = false;
      if (line[index] == 'r')
        result += CR;
      else if (line[index] == 'n')
        result += LF;
      else if (line[index] == '\\')
        result += '\\';
      else
        result += line[index];
    }
    else
      if (line[index] == '\\')
        escaped = true;
      else
        result += line[index];

    ++index;
  }
  return result;
}

// *** main program

int main(int argc, char *argv[])
{
  try
  {
    // handle command line options
    string device = "/dev/mobilephone";
    bool test = false;
    string baudrate;
    Ref<GsmAt> at;
    string initString = DEFAULT_INIT_STRING;
    bool swHandshake = false;
    bool requestStatusReport = false;
    // service centre address (set on command line)
    string serviceCentreAddress;

    int opt;
    int dummy;
    while((opt = getopt_long(argc, argv, "C:I:d:b:thvXr", longOpts, &dummy))
          != -1)
      switch (opt)
      {
      case 'C':
        serviceCentreAddress = optarg;
        break;
      case 'X':
        swHandshake = true;
        break;
      case 'I':
        initString = optarg;
        break;
      case 'd':
        device = optarg;
        break;
      case 'b':
        baudrate = optarg;
        break;
      case 't':
        test = true;
        break;
      case 'r':
        requestStatusReport = true;
        break;
      case 'v':
        cerr << argv[0] << stringPrintf(_(": version %s [compiled %s]"),
                                        VERSION, __DATE__) << endl;
        exit(0);
        break;
      case 'h':
        cerr << argv[0] << _(": [-b baudrate][-C sca][-d device][-h]"
                             "[-I init string]\n"
                             "  [-t][-v][-X] phonenumber [text]") << endl
             << endl
             << _("  -b, --baudrate    baudrate to use for device "
                  "(default: 38400)")
             << endl
             << _("  -C, --sca         SMS service centre address") << endl
             << _("  -d, --device      sets the destination device to connect "
                  "to") << endl
             << _("  -h, --help        prints this message") << endl
             << _("  -I, --init        device AT init sequence") << endl
             << _("  -r, --requeststat request SMS status report") << endl
             << _("  -t, --test        convert text to GSM alphabet and "
                  "vice\n"
                  "                    versa, no SMS message is sent") << endl
             << _("  -v, --version     prints version and exits")
             << endl
             << _("  -X, --xonxoff     switch on software handshake") << endl
             << endl
             << _("  phonenumber       recipient's phone number") << endl
             << _("  text              optional text of the SMS message\n"
                  "                    if omitted: read from stdin")
             << endl << endl;
        exit(0);
        break;
      case '?':
        throw GsmException(_("unknown option"), ParameterError);
        break;
      }

    if (! test)
    {
      // open the port and ME/TA
      Ref<Port> port = new
#ifdef WIN32
             Win32SerialPort
#else
             UnixSerialPort
#endif
        (device,
         baudrate == "" ? DEFAULT_BAUD_RATE :
         baudRateStrToSpeed(baudrate),
         initString, swHandshake);
      // switch message service level to 1
      // this enables acknowledgement PDUs
      MeTa m(port);
      m.setMessageService(1);

      at = new GsmAt(m);
    }

    // check parameters
    if (optind == argc)
      throw GsmException(_("phone number and text missing"), ParameterError);

    if (optind + 2 < argc)
      throw GsmException(_("more than two parameters given"), ParameterError);
      
    // get phone number
    string phoneNumber = argv[optind];

    // get text
    string text;
    if (optind + 1 == argc)
    {                           // read from stdin
      char s[1000];
      cin.get(s, 1000);
      text = unescapeString(s);
      if (text.length() > 160)
        throw GsmException(_("text is larger than 160 characters"),
                           ParameterError);
    }
    else
      text = argv[optind + 1];

    if (test)
      cout << gsmToLatin1(latin1ToGsm(text)) << endl;
    else
    {
      // send SMS
      Ref<SMSSubmitMessage> submitSMS =
        new SMSSubmitMessage(text, phoneNumber);
      // set service centre address in new submit PDU if requested by user
      if (serviceCentreAddress != "")
      {
        Address sca(serviceCentreAddress);
        submitSMS->setServiceCentreAddress(sca);
      }
      submitSMS->setStatusReportRequest(requestStatusReport);
      submitSMS->setAt(at);
      Ref<SMSMessage> ackPDU;
      submitSMS->send(ackPDU);

      // print acknowledgement if available
      if (! ackPDU.isnull())
      cout << ackPDU->toString();
    }
  }
  catch (GsmException &ge)
  {
    cerr << argv[0] << _("[ERROR]: ") << ge.what() << endl;
    return 1;
  }
  return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情一区不卡| 欧美精品免费视频| 国产在线观看一区二区| 免费观看久久久4p| 午夜精品成人在线| 视频一区二区中文字幕| 偷窥少妇高潮呻吟av久久免费 | 亚洲高清视频的网址| 国产精品精品国产色婷婷| 久久精品在线观看| 国产精品久久免费看| 亚洲品质自拍视频网站| 亚洲自拍与偷拍| 亚洲h动漫在线| 久久超碰97人人做人人爱| 久草这里只有精品视频| 国产精品一区二区91| 99久久精品一区二区| 色素色在线综合| 欧美一区二区三区成人| 久久一区二区三区四区| 国产精品久久久久久久午夜片| 亚洲美女屁股眼交3| 婷婷久久综合九色国产成人| 国产一区二区在线影院| 91视频国产观看| 欧美日韩久久一区二区| 久久只精品国产| 亚洲激情自拍视频| 精品一区二区在线播放| 91在线观看下载| 欧美一区二区三区四区五区| 国产欧美日韩视频一区二区| 亚洲综合色区另类av| 激情综合色综合久久| 91一区二区三区在线观看| 日韩片之四级片| 亚洲女性喷水在线观看一区| 激情文学综合丁香| 欧美亚洲动漫另类| 欧美激情综合网| 日韩av在线免费观看不卡| av成人动漫在线观看| 日韩精品自拍偷拍| 亚洲伊人伊色伊影伊综合网| 国产精品一区二区在线观看不卡| 欧美日韩精品是欧美日韩精品| 久久久久久久网| 男女激情视频一区| 欧美亚洲动漫精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 石原莉奈一区二区三区在线观看| 91小视频在线观看| 国产视频一区在线观看 | 日韩欧美另类在线| 一区二区在线免费观看| 成人一级片网址| 精品国产伦一区二区三区免费 | 久久免费电影网| 日本vs亚洲vs韩国一区三区| 欧美亚洲尤物久久| 亚洲色图欧洲色图婷婷| 大陆成人av片| 中文字幕免费不卡| 国产精品一区二区果冻传媒| 26uuu精品一区二区在线观看| 日本aⅴ精品一区二区三区 | 伦理电影国产精品| 99精品国产热久久91蜜凸| 2017欧美狠狠色| 蜜乳av一区二区| 日韩一本二本av| 日韩高清不卡一区二区| 欧美日韩国产经典色站一区二区三区 | 欧美成人官网二区| 免费视频最近日韩| 日韩欧美电影一区| 日韩av中文在线观看| 91精品蜜臀在线一区尤物| 视频在线观看一区| 欧美一区二区视频在线观看| 日本aⅴ免费视频一区二区三区| 欧美高清hd18日本| 国产精品毛片a∨一区二区三区| 国产一区二区三区四区在线观看| 日韩色在线观看| 国产一区福利在线| 国产精品全国免费观看高清| 99久久免费国产| 亚洲国产精品嫩草影院| 7777精品伊人久久久大香线蕉超级流畅| 日韩电影网1区2区| 337p日本欧洲亚洲大胆色噜噜| 国产99久久精品| 亚洲欧美一区二区三区极速播放| 欧美体内she精高潮| 蜜臀久久久99精品久久久久久| 精品国产3级a| 91色综合久久久久婷婷| 日韩一区欧美二区| 国产三级久久久| 色综合天天综合给合国产| 日韩精品色哟哟| 亚洲一区二区三区四区在线免费观看 | 欧美视频一区在线观看| 天堂久久一区二区三区| 337p粉嫩大胆噜噜噜噜噜91av| 成人av一区二区三区| 亚洲国产美国国产综合一区二区| 日韩亚洲欧美成人一区| 不卡av在线免费观看| 日韩电影在线一区二区三区| 国产精品水嫩水嫩| 91 com成人网| 91视视频在线直接观看在线看网页在线看| 日韩国产欧美在线播放| 中文字幕第一区| 91精品国产欧美一区二区18| 99精品一区二区| 麻豆成人久久精品二区三区红| 成人黄色综合网站| 亚洲精选一二三| 久久先锋影音av鲁色资源| 色哟哟国产精品免费观看| 精品一区二区国语对白| 亚洲第一激情av| 欧美国产欧美综合| 欧美白人最猛性xxxxx69交| 在线观看视频一区二区欧美日韩| 国产成人免费在线视频| 蜜桃91丨九色丨蝌蚪91桃色| 一区二区三区小说| 国产精品嫩草影院av蜜臀| 欧美大片日本大片免费观看| 在线视频你懂得一区二区三区| 成人在线视频首页| 国产成人精品aa毛片| 久久66热re国产| 欧美aaa在线| 日韩福利电影在线观看| 一区二区三区成人| 亚洲乱码中文字幕| 综合欧美一区二区三区| 亚洲国产经典视频| 中文字幕不卡一区| 亚洲国产精品国自产拍av| 欧美精品一区二区久久婷婷| 日韩一级免费观看| 欧美大片拔萝卜| 日韩亚洲欧美在线| 日韩激情中文字幕| 韩国av一区二区三区| 天天色天天爱天天射综合| 一区二区免费在线播放| 亚洲激情网站免费观看| 亚洲视频在线观看三级| 一卡二卡欧美日韩| 亚洲伊人伊色伊影伊综合网| 亚洲伊人色欲综合网| 日韩激情中文字幕| 国产一区视频导航| 国产99久久久国产精品潘金| jiyouzz国产精品久久| 色综合天天综合网天天看片| 91精彩视频在线观看| 欧美日韩一区二区三区在线| 7777精品久久久大香线蕉| 972aa.com艺术欧美| 国产综合色产在线精品| 免费观看久久久4p| 在线精品视频一区二区三四| 精品视频一区二区不卡| 亚洲成人激情自拍| 午夜电影网亚洲视频| 日本欧美加勒比视频| 韩国欧美一区二区| 成人综合婷婷国产精品久久免费| 成人av电影免费观看| 欧美三级中文字幕| 2022国产精品视频| 亚洲手机成人高清视频| 五月天网站亚洲| 国产伦精品一区二区三区免费| 99免费精品在线| 日韩一区二区中文字幕| 中文乱码免费一区二区| 亚洲一区二区视频在线| 国产一区在线观看麻豆| 欧美综合一区二区| 精品福利在线导航| 亚洲精品国产a| 国内精品在线播放| 欧美午夜免费电影| 久久精品日产第一区二区三区高清版 | 亚洲福利电影网| 国模无码大尺度一区二区三区| 99re免费视频精品全部| 精品女同一区二区| 亚洲午夜三级在线| 成人av先锋影音|