From 996651a3a3e451d978a017f964bacccc0c19ed0f Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Tue, 30 May 2017 15:13:29 +0200 Subject: Move Sms class to a separate module Preparation for following commits to add smpp support, as we will have a class SmppClient with a method accepting an Sms object to send it. Change-Id: I1f28e14e963abb64df687b69d54975be2aeb0d0d --- src/osmo_gsm_tester/sms.py | 48 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/osmo_gsm_tester/sms.py (limited to 'src/osmo_gsm_tester/sms.py') diff --git a/src/osmo_gsm_tester/sms.py b/src/osmo_gsm_tester/sms.py new file mode 100644 index 0000000..64eca5a --- /dev/null +++ b/src/osmo_gsm_tester/sms.py @@ -0,0 +1,48 @@ +# osmo_gsm_tester: DBUS client to talk to ofono +# +# Copyright (C) 2016-2017 by sysmocom - s.f.m.c. GmbH +# +# Author: Neels Hofmeyr +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +class Sms: + _last_sms_idx = 0 + msg = None + + def __init__(self, from_msisdn=None, to_msisdn=None, *tokens): + Sms._last_sms_idx += 1 + msgs = ['message nr. %d' % Sms._last_sms_idx] + msgs.extend(tokens) + if from_msisdn: + msgs.append('from %s' % from_msisdn) + if to_msisdn: + msgs.append('to %s' % to_msisdn) + self.msg = ', '.join(msgs) + + def __str__(self): + return self.msg + + def __repr__(self): + return repr(self.msg) + + def __eq__(self, other): + if isinstance(other, Sms): + return self.msg == other.msg + return inself.msg == other + + def matches(self, msg): + return self.msg == msg + +# vim: expandtab tabstop=4 shiftwidth=4 -- cgit v1.2.3