[#362083] Teaching Programming Languages (including Ruby) — Samuel Williams <space.ship.traveller@...>

Hello,

20 messages 2010/05/02

[#362098] Main working window for Ruby is DOS? — Kaye Ng <sbstn26@...>

I know nothing about programming and am not a techy person, so please

16 messages 2010/05/03

[#362116] School teacher still at it learning programming language — Hilary Bailey <my77elephants@...>

Now I while glimpsing at the beauty of Ruby, there is the software of

11 messages 2010/05/03

[#362166] Something I expected to work, but didn't! — Kurtis Rainbolt-greene <kurtisrainboltgreene@...>

irb(main):001:0> x = 2

11 messages 2010/05/04

[#362215] for-in vs. map closures — Mike Austin <mike_ekim@...>

I was experimenting with closures and JavaScript's and Ruby's

11 messages 2010/05/05

[#362286] ri on sqlite — Intransition <transfire@...>

What do others think of a creating a new ri tool which uses a SQLite

17 messages 2010/05/06

[#362341] ease of porting (translating) ruby to C (vs. python)? — bwv549 <jtprince@...>

In a very small bioinformatics group I know of, they are deciding

17 messages 2010/05/07

[#362375] Strings iteration — Viorel <viorelvladu@...>

I have some names like aaxxbbyy where xx is '01'..'10' and yy is also

14 messages 2010/05/08

[#362425] Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...>

Have apps moved over to the web (or GUI) totally ? Will there be any

21 messages 2010/05/10
[#362441] Re: Any future for curses applications/toolkits like rbcurse ? — botp <botpena@...> 2010/05/10

On Mon, May 10, 2010 at 2:13 PM, R. Kumar <sentinel.2001@gmx.com> wrote:

[#362448] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

interface and/or the installation itself is terrible.

[#362458] Re: Any future for curses applications/toolkits like rbcurse ? — botp <botpena@...> 2010/05/10

On Mon, May 10, 2010 at 10:28 PM, R. Kumar <sentinel.2001@gmx.com> wrote:

[#362460] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

botp wrote:

[#362463] Re: Any future for curses applications/toolkits like rbcurse ? — "R. Kumar" <sentinel.2001@...> 2010/05/10

Strange. I cant push a gem even after yanking.

[#362452] Unit Test of method calling system() - how? — Martin Hansen <mail@...>

How can I unit test the two methods:

16 messages 2010/05/10

[#362498] In Ruby, can the coerce() method know what operator it is th — Jian Lin <blueskybreeze@...>

In Ruby, it seems that a lot of coerce() help can be done by

12 messages 2010/05/11
[#362546] Re: In Ruby, can the coerce() method know what operator it is th — Caleb Clausen <vikkous@...> 2010/05/11

On 5/10/10, Jian Lin <blueskybreeze@gmail.com> wrote:

[#362611] Re: In Ruby, can the coerce() method know what operator it is th — Colin Bartlett <colinb2r@...> 2010/05/12

On Tue, May 11, 2010 at 4:46 PM, Caleb Clausen <vikkous@gmail.com> wrote:

[#362657] Asynchronous HTTP request — Daniel DeLorme <dan-ml@...42.com>

Does anyone know how to do the following, but without threads, purely

28 messages 2010/05/13

[#362718] Range on strings. — Vikrant Chaudhary <nasa42@...>

Hi,

13 messages 2010/05/14

[#362787] class best way for getters ? — unbewusst.sein@... (Une B騅ue)

i have a class "HFSFile" initialized by a parsed string

12 messages 2010/05/15

[#362979] curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...>

Two questions:

14 messages 2010/05/18
[#362980] Re: curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...> 2010/05/18

On 10-05-18 02:35 PM, Xeno Campanoli / Eskimo North and Gmail wrote:

[#362982] Re: curl library? — Luis Parravicini <lparravi@...> 2010/05/18

On Tue, May 18, 2010 at 6:56 PM, Xeno Campanoli / Eskimo North and

[#362984] Re: curl library? — Xeno Campanoli / Eskimo North and Gmail <xeno.campanoli@...> 2010/05/18

Well, I got that -dev thing installed with apt-get, and then I tried again and

[#363027] Retrieve instance — Walle Wallen <walle.sthlm@...>

Quick question. Can I somehow retrieve the instance of the class Test in

11 messages 2010/05/19

[#363076] Scrape javascript content — Phil Mcdonnell <phil.a.mcdonnell@...>

I'm trying to scrape a page that hides some data behind a javascript

11 messages 2010/05/20

[#363115] OMG, why are there so many Strings in ObjectSpace! — timr <timrandg@...>

I was playing around looking at ObjectSpace in irb and was astounded

14 messages 2010/05/21

[#363225] Redefine a Class? — Mark T <paradisaeidae@...>

Currently this raises: superclass mismatch for class Soda (TypeError)

12 messages 2010/05/25

[#363240] Funny IO.select behaviour — Dennis Nedry <dennis@...>

I've been debugging my full screen console ruby editor.

13 messages 2010/05/25

[#363348] Ruby as Client Side Language in Web Browser (replacing JS) — "Simone R." <k5mmx@...>

Hi everybody,

17 messages 2010/05/27

[#363412] A better way to write this function? — Jason Lillywhite <jason.lillywhite@...>

Here is my attempt at Newton's second law in Ruby:

14 messages 2010/05/28

[#363417] Interrupting the evaluation of a ruby script — Emmanuel Emmanuel <emmanuel.bacry@...>

This is my problem :

12 messages 2010/05/28
[#363447] Re: Interrupting the evaluation of a ruby script — Branden Tanga <branden.tanga@...> 2010/05/28

Emmanuel Emmanuel wrote:

[#363483] Re: Interrupting the evaluation of a ruby script — Emmanuel Emmanuel <emmanuel.bacry@...> 2010/05/29

[#363426] A complete beginners question — Ant Walliams <anthonywainwright@...>

Hi there,

19 messages 2010/05/28

[#363432] Dynamic SVG with Ruby/Tk — Yotta Meter <spam@...>

The example I'm looking for in regards to ruby/SVG differs from the

14 messages 2010/05/28

[#363467] Date.today problem on linux with Ruby 1.8.6 — Jarmo Pertman <jarmo.p@...>

Hello.

10 messages 2010/05/29

[#363524] enumerator problem in 1.9.1 — Bug Free <amberarrow@...>

The following line:

19 messages 2010/05/31
[#363528] Re: enumerator problem in 1.9.1 — botp <botpena@...> 2010/05/31

On Mon, May 31, 2010 at 9:04 AM, Bug Free <amberarrow@yahoo.com> wrote:

[#363533] Re: enumerator problem in 1.9.1 — Robert Klemme <shortcutter@...> 2010/05/31

2010/5/31 botp <botpena@gmail.com>:

SMPP from Perl to Ruby

From: Jose Escobar <ineedme@...>
Date: 2010-05-21 21:13:20 UTC
List: ruby-talk #363157
I have this code in perl to send SMS via SMPP

Can somebody help me to translated to Ruby

I try the ruby-SMPP but it doesnt work well and i need it deploy it on
SUNOS 3

Please help

#!/usr/bin/perl -w

use IO::Socket;

$SMSCIP = 'localhost';
$SMSCPORT = '9988';
$SYSID = 'user';
$SYSTYPE = 'smpp';
$PWD = 'password';

$LSYSID = length($SYSID);
$LSYSID++;
$LSYSTYPE = length($SYSTYPE);
$LSYSTYPE++;
$LPWD = length($PWD);
$LPWD++;

$SYSID = pack("a$LSYSID",$SYSID);
$SYSTYPE = pack("a$LSYSTYPE",$SYSTYPE);
$PWD = pack("a$LPWD",$PWD);
$ADDR_TON = pack("C", 0);
$ADDR_NPI = pack("C", 0);
$INT_VERS = pack("C", 52);
$ADDR_RANG = pack("C", 0);

@SubmitSM_resp = ();
$phonenumber = $ARGV[0];
$message = $ARGV[1];
$origin = $ARGV[2];

my $sock = new IO::Socket::INET (
    PeerAddr => $SMSCIP,
    PeerPort => $SMSCPORT,
    Proto => 'tcp',
   ); die "Could not create socket: $!\n" unless $sock;

$sock->autoflush(1);

########### START SEQUENCE ##############

$flag = 0;
&SendBindTransmit;
$RBTStat = &ReadBindTransmit;
if ($RBTStat ne "00000000") {
#  print "Bind transmitter OK\n";
$flag = 1;
  print "Bind transmitter response returned status code $RBTStat for
$phonenumber\n";
  }
&SendSubmitSM($phonenumber, $message, $origin);
@SubmitSM_resp = &ReadSubmitSM;
if ($SubmitSM_resp[0] ne "00000000") {
#  print "Submit message OK, message ID is $SubmitSM_resp[1]\n";
$flag = 1;
  print "Submit message response returned status code $SubmitSM_resp[0]
for $phonenumber\n";
  }
&SendUnbind;
$RUBStat = &ReadUnbind;
if ($RUBStat ne "00000000") {
#  print "Unbind OK\n";
$flag = 1;
  print "Unbind response returned status code $RUBStat for
$phonenumber\n";
  }

if ($flag == 0) {
  print "Message: $message\nSent successfully to: $phonenumber\n"
  }
else {
  print "Message unsuccessfully sent to $phonenumber\n"
  }


########### END SEQUENCE ################

close($sock);


sub SendBindTransmit {
  my $seq = 1;
  my $cst = 0;
  my $cln = 16;
  my $cid = "00000002";
  my $PDU_L = 20 + $LSYSID + $LSYSTYPE + $LPWD;
  my $PDU_header = pack("NNNN", $PDU_L, $cid, $cst, $seq);

  my $PDU = $PDU_header . $SYSID . $PWD . $SYSTYPE . $INT_VERS .
$ADDR_TON . $ADDR_NPI . $ADDR_RANG;
  print $sock $PDU;
  }


sub SendSubmitSM {
  my $seq = 1;
  my $cst = 0;
  my $cln = 16;
  my $cid = "00000004";
  my $sertype = "\0";
  my $s_addr_ton = pack("H2","05");
  my $s_addr_npi = pack("H2","01");
  my $s_addr = "$_[2]\0";
  my $d_addr_ton = pack("H2","01");
  my $d_addr_npi = pack("H2","01");
  my $d_addr = $_[0] . "\0";
  my $esm_class = pack("H2","01");
  my $proto_id = pack("H2","00");
  my $priority_flg = pack("H2","00");
  my $sch_del_time = pack("H2","00");
  my $val_period = pack("H2","00");
  my $reg_del = pack("H2","00");
  my $replace_ifpres = pack("H2","00");
  my $data_coding = pack("H2","00");
  my $sm_def_msgid = pack("H2","00");
  my $mesg = $_[1];
  my $mesg_l = length($mesg);

  my $PDU_L = 28 + length($sertype) + length($s_addr) + length($d_addr)
+ length($val_period) + length($sch_del_time) + $mesg_l;
  $mesg_l = pack("C",$mesg_l);
  my $PDU_header = pack("NNNN", $PDU_L, $cid, $cst, $seq);
  my $PDU = $PDU_header . $sertype . $s_addr_ton . $s_addr_npi . $s_addr
. $d_addr_ton . $d_addr_npi . $d_addr . $esm_class . $proto_id .
$priority_flg . $sch_del_time . $val_period . $reg_del . $replace_ifpres
. $data_coding . $sm_def_msgid . $mesg_l . $mesg;
  print $sock $PDU;
  }

sub ReadSubmitSM {
  my $byte;
  my $x = 0;
  my $seq;
  my $cst;
  my $cln;
  my $cid;
  my $curs = 16;
  my $msg_id;

  while ($x < 4) {
    sysread($sock, $byte, 4);
    if ($x == 0) {
      $cln = unpack('L',$byte);
#      print 'PDU length: ',$cln," x:$x","\n";
      }
    elsif ($x == 1) {
      $cid = unpack('H8',$byte);
#      print 'Command ID: ',$cid," x:$x","\n";
      }
    elsif ($x == 2) {
      $cst = unpack('H8',$byte);
#      print 'Status of ReadSubmitSM: ',$cst," x:$x","\n";
      }
    elsif ($x == 3) {
      $seq = unpack('L',$byte);
#      print 'Sequence number: ',$seq," x:$x","\n";
      }
    else {
      print 'Something wrong with subroutine ReadSubmitSM!, x=',"$x\n";
      }
    $x++;
    }
  if ($curs < $cln) {
    $msg_id = GetCstring($sock);
    }
  return $cst, $msg_id;
  }

sub ReadBindTransmit {
  my $byte;
  my $x = 0;
  my $seq;
  my $cst;
  my $cln;
  my $cid;
  my $curs = 16;
  my $sys_id;
  my $ifver = "NA";

  while ($x < 4) {
    sysread($sock, $byte, 4);
    if ($x == 0) {
      $cln = unpack('L',$byte);
#      print 'PDU length: ',$cln," x:$x","\n";
      }
    elsif ($x == 1) {
      $cid = unpack('H8',$byte);
#      print 'Command ID: ',$cid," x:$x","\n";
      }
    elsif ($x == 2) {
      $cst = unpack('H8',$byte);
#      print 'Status of ReadBindTransmit: ',$cst," x:$x","\n";
      }
    elsif ($x == 3) {
      $seq = unpack('L',$byte);
#      print 'Sequence number: ',$seq," x:$x","\n";
      }
    else {
      print 'Something wrong with subroutine ReadBindTransmit!,
x=',"$x\n";
      }
    $x++;
    }
  if ($curs < $cln) {
    $sys_id = GetCstring($sock);
    $curs = $curs + length($sys_id);
    }
  if ($curs < $cln) {
    $ifver = GetCstring($sock);
    }
  return $cst;
  }


sub GetCstring {
  my $chr = "";
  my $SCK = $_[0];
  my $cstr = "";

  while ($chr ne "\0") {
    $chr = getc($SCK);
    $cstr = $cstr . $chr;
    }
  return $cstr;
  }



sub SendUnbind {
  my $seq = 1;
  my $cst = 0;
  my $cln = 16;
  my $cid = "00000006";

  print $sock pack("NNNN", $cln, $cid, $cst, $seq);
  }

sub ReadUnbind {
  my $byte;
  my $x = 0;
  my $y = 0;
  my $cln;
  my $cid;
  my $cst;
  my $seq;

  while ($x < 4) {
    sysread($sock, $byte, 4);
    if ($x == 0) {
      $cln = unpack('L',$byte);
#      print 'PDU length: ',$cln," x:$x","\n";
      }
    elsif ($x == 1) {
      $cid = unpack('H8',$byte);
#      print 'Command ID: ',$cid," x:$x","\n";
      }
    elsif ($x == 2) {
      $cst = unpack('H8',$byte);
#      print 'Status of ReadBindTransmit: ',$cst," x:$x","\n";
      }
    elsif ($x == 3) {
      $seq = unpack('L',$byte);
#      print 'Sequence number: ',$seq," x:$x","\n";
      }
    else {
      print 'Something wrong with subroutine ReadUnbind!, x=',"$x\n";
      }
    $x++;
    }
    return $cst;
  }
-- 
Posted via http://www.ruby-forum.com/.

In This Thread

Prev Next