Hi,
i want to use inetlab.smpp client dll in a windows service, which was written in c#.
can any one please provide the sample code how to use the client connection in windows service.
how to use smpp client dll in windows service
Re: how to use smpp client dll in windows service
Hi murali,
Here is simplified example:
Here is simplified example:
Code: Select all
public class SmppClientWindwsService : ServiceBase
{
private SmppClientSettings _settings;
private readonly SmppClient _client;
private readonly ILog _log;
private readonly FileLogger _logger;
public SmppClientWindwsService()
{
ServiceName = "SMPPClient";
_logger = new FileLogger("client.log");
LogManager.SetLoggerFactory(loggerName => _logger.GetLog(loggerName));
_log = LogManager.GetLogger(GetType().Name);
_client = new SmppClient();
_client.evConnected += ClientOnConnected;
_client.evBindComplete += ClientOnBindComplete;
_client.evDeliverSm += ClientOnDeliverSm;
}
private void ClientOnBindComplete(object sender, BindResp data)
{
}
private void ClientOnConnected(object sender, bool bSuccess)
{
_log.Info(string.Format("Client connected to {0}", _client.RemoteEndPoint));
(sender as SmppClient).BindAsync(_settings.Username, _settings.Password);
}
private void ClientOnDeliverSm(object sender, DeliverSm data)
{
}
protected override void OnStart(string[] args)
{
_settings = LoadSettings();
_logger.Start();
_client.ConnectAsync(_settings.ServerAddress, _settings.ServerPort);
}
private SmppClientSettings LoadSettings()
{
return new SmppClientSettings
{
};
}
protected override void OnStop()
{
_log.Info(string.Format("Client disconnected from {0}", _client.RemoteEndPoint));
_client.Disconnect();
_logger.Shutdown();
}
}
public class SmppClientSettings
{
public string ServerAddress { get; set; }
public int ServerPort { get; set; }
public string Username { get; set; }
public string Password { get; set; }
}