esme: import smpplib module on first use

Change-Id: Icc92937fdada9210f788805dbc42b80014e345e8
diff --git a/src/osmo_gsm_tester/obj/esme.py b/src/osmo_gsm_tester/obj/esme.py
index 41ec87f..e23e88c 100644
--- a/src/osmo_gsm_tester/obj/esme.py
+++ b/src/osmo_gsm_tester/obj/esme.py
@@ -17,12 +17,6 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-import smpplib.gsm
-import smpplib.client
-import smpplib.command
-import smpplib.consts
-import smpplib.exceptions
-
 from ..core import log
 from ..core.event_loop import MainLoop
 
@@ -35,9 +29,6 @@
 
 class Esme(log.Origin):
 
-    MSGMODE_TRANSACTION = smpplib.consts.SMPP_MSGMODE_FORWARD
-    MSGMODE_STOREFORWARD = smpplib.consts.SMPP_MSGMODE_STOREFORWARD
-
     def __init__(self, msisdn):
         self.msisdn = msisdn
         # Get last characters of msisdn to stay inside MAX_SYS_ID_LEN. Similar to modulus operator.
@@ -51,6 +42,13 @@
         self.listening = False
         self.references_pending_receipt = []
         self.next_user_message_reference = 1
+        import smpplib.gsm
+        import smpplib.client
+        import smpplib.command
+        import smpplib.consts
+        import smpplib.exceptions
+        self.MSGMODE_TRANSACTION = smpplib.consts.SMPP_MSGMODE_FORWARD
+        self.MSGMODE_STOREFORWARD = smpplib.consts.SMPP_MSGMODE_STOREFORWARD
 
     def __del__(self):
         self.cleanup()