How to send binary data in the message body
How can we send binary data in the message body that is base64 encoded? below are the requirements
Mime Header.
Mime-version: 1.0
Content-Type: application/octet_stream; name=test
Content-Transfer-Encoding: Base64
Submission must be named "test.sub" (lowercase)
Submission must be base64 mime-encoded
Submission must be sent in the body of the message (not as an attachment)
Only one submission per mail message
No other comments should be put in the body of the mail message (other than the submission)
I highly appreciate your help. If you can provide few examples, that will be very helpfull.
Thanks,
Madan
Use Message.setContent to set the content, or use Message.setDataHandler with
a DataHandler constructed with a ByteArrayDataSource. If the content is not
"naturally" encoded in base64, you can enforce it by setting the Content-Transfer-Encoding
header to "base64". Any reasonable mail reader won't care what encoding you use, as
long as the decoded data is correct.
Similar Messages
-
How to sending simple text in the mail body
Hi friends,
How to send simple text in the mail body through ABAP code
plz send me the related code and setting for that mail.
Thanks&Regards,
Srinivastry this...
FORM send_file_as_email_attachment .
DATA: objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA: objpack LIKE sopcklsti1 OCCURS 2 WITH HEADER LINE.
DATA: objhead LIKE solisti1 OCCURS 1 WITH HEADER LINE.
DATA: reclist LIKE somlreci1 OCCURS 5 WITH HEADER LINE.
DATA: objbin LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA : i_body TYPE soli_tab WITH HEADER LINE.
DATA: it_attach LIKE it_display1 OCCURS 0 WITH HEADER LINE.
DATA: doc_chng LIKE sodocchgi1.
DATA: tab_lines LIKE sy-tabix.
DATA: att_lines TYPE i.
DATA: lv_lines TYPE i.
DATA: file TYPE string.
data: g_datum like sy-datum.
data: g_datum1(10) type c.
DATA: len TYPE n.
LOOP AT it_email.
CLEAR : objpack,
objhead,
objbin,
objtxt,
reclist.
REFRESH: objpack,
objhead,
objbin,
objtxt,
reclist.
g_datum = sy-datum - 1.
concatenate g_datum6(2) '.' g_datum4(2) '.' g_datum+0(4) into
g_datum1.
doc_chng-obj_descr = 'Aged Stock more than 45 Days'.
CONCATENATE 'Aged Stock more than 45 Days' '-' it_email-vkbur INTO
doc_chng-obj_descr.
CONCATENATE 'Please find enclosed Aged Stock Details ( >45days ) report as on'
g_datum1
INTO objtxt-line SEPARATED BY space.
APPEND objtxt.
objtxt-line = ' '.
APPEND objtxt.
objtxt-line = 'Regards'.
APPEND objtxt.
objtxt-line = 'LIS SAP Projects'.
APPEND objtxt.
objtxt-line =
'PS: Pls send feedback for futher improvements to SAP office.'.
APPEND objtxt.
DESCRIBE TABLE objtxt LINES tab_lines.
READ TABLE objtxt INDEX tab_lines.
doc_chng-doc_size = ( tab_lines - 1 ) * 255 + STRLEN( objtxt ).
CLEAR objpack-transf_bin.
objpack-head_start = 1.
objpack-head_num = 1.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'TXT'.
objpack-obj_name = 'Run_prog'.
objpack-obj_descr = 'Agestock.txt'.
lv_lines = tab_lines.
APPEND objpack.
*CONCATENATE 'Plant' 'Material Number' 'Qty(More than 45days)'
*'Amount' INTO
it_display SEPARATED BY space.
append objbin.
clear: objbin.
CLEAR:it_display2.
REFRESH it_display2.
it_display2-werks = 'Plant|'.
it_display2-matnr = 'Material Number'.
it_display2-qty = '|Qty > 45 days'.
it_display2-amount = ' |Amount'.
APPEND it_display2.
it_display2-werks = ''.
it_display2-matnr = ''.
it_display2-qty = ''.
it_display2-amount = ''.
APPEND it_display2.
CLEAR : it_display2.
sort it_display1 by amount descending.
LOOP AT it_display1 WHERE werks = it_email-vkbur.
AT FIRST.
*CONCATENATE 'Plant ' 'Material Number' 'Qty(More than 45days)'
*'Amount' INTO
objbin-line SEPARATED BY space.
append objbin.
clear: objbin.
ENDAT.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = it_display1-matnr
IMPORTING
output = it_display1-matnr.
it_display1-qty = TRUNC( it_display1-qty ).
MOVE-CORRESPONDING it_display1 TO it_display2.
APPEND it_display2.
CLEAR:it_display1,it_display2,objbin.
CLEAR:it_display1.
ENDLOOP.
objbin[] = it_display2[].
DESCRIBE TABLE objbin LINES tab_lines.
objhead = 'Suug'.
APPEND objhead.
objpack-transf_bin = 'X'.
objpack-head_start = 3.
objpack-head_num = 1.
objpack-body_start = 1.
objpack-body_num = tab_lines.
objpack-doc_type = 'RAW'.
objpack-obj_name = 'Run_prog'.
objpack-obj_descr = 'Agestock.txt'.
APPEND objpack.
reclist-receiver = '[email protected]'.
reclist-rec_type = 'U'.
APPEND reclist.
=====================================================================
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = doc_chng
commit_work = 'X'
TABLES
packing_list = objpack
object_header = objhead
contents_bin = objbin
contents_txt = objtxt
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
operation_no_authorization = 4
OTHERS = 99.
CLEAR : it_email.
ENDLOOP.
ENDFORM. "send_mail
Message was edited by:
Sugumar Ganesan -
How can I insert data in the request body of a proxyService ?
I have the following xq query, I have defined a variable called context and assign the value of the xquery bellow.
<ns:Kontekst xmlns:ns20="http://skat.dk/etil/2011/02/11/">
<TransaktionsID>{fn-bea: uuid()}</TransaktionsID>
<TransaktionsTid>{fn:current-dateTime()}</TransaktionsTid>
</ns:Kontekst>
Question. is it possible to include this as part of the request body ?You can do this using the "Insert" action of OSB.Try and let us know.
http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/tutorial/tutTransform.html#wp1068641 -
Best practice for putting binary data on the NMR
Hi,
We're creating a component that will consume messages off the NMR, encode them, and subsequently put them back on the NMR. What's the best practice for sending binary data over the NMR?
1. setContent()?
2. addAttachment()?
3. setProperty()?
If NormailzedMessage.setContent() is the desired approach, then how can you accomplish that?
Thanks,
BrucesetContent() is used only for XML messages. The recommended way to accommodate binary data is to use addAttachment().
-
Hi friends, How to send any data (even binary) through XI, without using
1) How to send any data (even binary) through XI, without using the Integration Repository .?
hi ganga,
Yes;
1. we can test adapters very easily and quickly without any IR development.
2. we can send any formatted data without having to convert it to XML and back again, e.g. file->XI->file.
3. we can send any document from 1 sender to multiple receivers using XI to guarantee delivery.
/people/william.li/blog/2006/09/08/how-to-send-any-data-even-binary-through-xi-without-using-the-integration-repository
the process integration layer of the NetWeaver define/reuse interface objects for the SAP Integration Repository. These objects include Business Scenarios, Business Processes, Message Interfaces, Message Types, Data Types, Message Mappings, and Interface Mappings. The application developer refers to these objects in defining the interactive flow between applications for the SAP Integration Directory.
regards,
nikhil -
HOW TO SEND PERSONALIZED EMAILS WITH THE SAME MESSAGE, BUT WITH THE INDIVIDUAL RECIPIENT'S NAME... (OR NAME AND THE EMAIL ADDRESS) TO ALL ADDRESSES IN THE ADDRESS BOOK - WITH RECIPIENTS SEEING ONLY THEIR OWN NAME WITHIN THE BODY OF THE MESSAGE TO THEM ?
ALSO, HOW TO ELIMINATE ALL THE OTHER NAMES FROM THE LIST - SO THEY CAN NOT SEE WHO ELSE IS ON THE MAILING LIST, AND WHO ELSE IS GETTING THE SAME MESSAGE?In the csv file, the column headers must match the the special references in curly brackets.
So you either change the column header in .csv file or the bit in the curly brackets in the Template email.
To change the column header:
In the example shown below, I wanted to use the first two columns
'First Name', 'Last Name' note the exact spelling.
I also wanted the email address which was in a column called 'Primary Email'.
To make it easier for me, I copied the Primary Email column and inserted it into the third column position and then changed the column header name from 'Primary Email' to 'Email'. (This meant I still had the original column header just in case). see image below.
But you could just change the column header name from 'Primary Email' to 'Email' without moving column about - up to you.
At this point check that all the contacts do have a valid email address.
then save the file.
If you do not want to edit the .csv file, then you need to edit the template email.
eg: {{First Name}} {{Last Name}} <{{Email}}>
change to : {{First Name}} {{Last Name}} <{{Primary Email}}>
If still having an issue, please post two images.
One image needs to show the row of column headers used in .csv file.
The other image needs to show the Template email, so I can see how you have used the curly brackets. -
How to convert binary data to PDF and attach to the particular po
our client wants to attach the pdf coming from portal as attachment to that particular PO. From portal the pdf will come in binary format. Find how will we convert that binary data back to pdf and attach to the PO in R/3?
Hi,
You can downlaod Binary data into PDF using GUI_DOWNLOAD...pass the binary data and the BINSIZE...
santhosh -
All the message dates in the message list changed in every mailbox to a recent date, I don't know why.. The dates within the messages' headlines themselves remained correct. How do I re-establish the correct dates also in the mailboxes' message list?
First thing is to forget all the complex configs and just try to schedule the report to run once now, no alerts, no notifications, no nothing.
Does that work?
Then you can build up the schedule, to see where the problem is coming from.
Sincerely,
Ted Ueda -
How to send multiple Recipients using the mail.jar and activation.jar
hi!
could somebody help me. how do i send multiple Recipient using mail.jar. when i would input 2email address in to Recipient
(example: [email protected], [email protected])
i get a DEBUG: setDebug: JavaMail version 1.3.2
but if i send a single email it just works properly.
heres my code
import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.event.*;
import javax.mail.internet.*;
public class SendMail
public SendMail(String to, String from, String subject, String body)
//public SendMail(String to)
String message_recip = to;
String message_subject = subject;
String message_cc = "";
String message_body = body;
//The JavaMail session object
Session session;
//The JavaMail message object
Message mesg;
// Pass info to the mail server as a Properties, since JavaMail (wisely) allows room for LOTS of properties...
Properties props = new Properties( );
// LAN must define the local SMTP server as "mailhost" to be able to send mail...
//props.put("mail.smtp.host","true");
props.put("mail.smtp.host", "mailhost");
// Create the Session object
session = Session.getDefaultInstance(props, null);
session.setDebug(true);
try
// create a message
mesg = new MimeMessage(session);
// From Address - this should come from a Properties...
mesg.setFrom(new InternetAddress(from));
// TO Address
InternetAddress toAddress = new InternetAddress(message_recip);
mesg.addRecipient(Message.RecipientType.TO, toAddress);
// CC Address
InternetAddress ccAddress = new InternetAddress(message_cc);
mesg.addRecipient(Message.RecipientType.CC, ccAddress);
// The Subject
mesg.setSubject(message_subject);
// Now the message body.
mesg.setText(message_body);
// XXX I18N: use setText(msgText.getText( ), charset)
// Finally, send the message!
Transport.send(mesg);
}//end of try
catch (MessagingException ex)
while ((ex = (MessagingException)ex.getNextException( )) != null)
ex.printStackTrace( );
}//end of while
}//end of catch
}//end of SendMail
public static void main(String[] args)
//String t = "[email protected], [email protected]"; - this I think causes error
String t = "[email protected]";
String f = "[email protected]";
String s = "Hello World";
String b = "the quick brown fox jumps over the lazy dog";
SendMail sm = new SendMail(t,f,s,b);
}//end of main
}//end of class
could someone please help me im stuck-up with this. thanx!i need it ASAP
i am a beginner in java and jsp
Need to knw how can I parse the addresss field
Below
is the code
<code>
package
public class EMailBean {
private String smtp,username,password,from,bcc,subject,body,attachments,cc;
/*setter*/
public void setSmtp(String str){this.smtp=str;}
public void setUsername(String str){this.username=str;}
public void setPassword(String str){this.password=str;}
public void setFrom(String str){this.from=str;}
public void setTo(String str){this.to=str;}
public void setCc(String str){this.cc=str;}
public void setBcc(String str){this.bcc=str;}
public void setSubject(String str){this.subject=str;}
public void setBody(String str){this.body=str;}
public void setAttachments(String str){this.attachments=str;}
/*getter*/
public String getSmtp( ){return this.smtp;}
public String getUsername( ){return this.username;}
public String getPassword( ){return this.password;}
public String getFrom( ){return this.from;}
public String getTo( ){return this.to;}
public String getCc( ){return this.cc;}
public String getBcc( ){return this.bcc;}
public String getSubject( ){return this.subject;}
public String getBody( ){return this.body;}
public String getAttachments( ){return this.attachments;}
</code>
Session session = Session.getDefaultInstance(props, null);
session.setDebug(true);
try {
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(mail.getFrom()));
msg.addRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));
msg.addRecipient(Message.RecipientType.TO,new InternetAddress(mail.getTo()));
msg.addRecipient(Message.RecipientType.CC, new InternetAddress(mail.getCc()));
msg.addRecipient(Message.RecipientType.CC, new InternetAddress("[email protected]"));
msg.setSubject(mail.getSubject());
// Create the message part
BodyPart messageBodyPart = new MimeBodyPart();
// Fill the message
messageBodyPart.setText(mail.getBody());
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
// Part two is attachment
messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(mail.getAttachments());
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(source.getName());
multipart.addBodyPart(messageBodyPart);
msg.setContent(multipart);
msg.setSentDate(new Date());
Transport t = session.getTransport("smtp");
try {
t.connect(mail.getUsername(), mail.getPassword());
t.sendMessage(msg, msg.getAllRecipients());
} finally {
t.close();
result = result + "<FONT SIZE='4' COLOR='blue'><B>Success!</B>"+"<FONT SIZE='4' COLOR='black'> "+"<HR><FONT color='green'><B>Mail was successfully sent to </B></FONT>: "+mail.getTo()+"<BR>";
if (!("".equals(mail.getCc())))
result = result +"<FONT color='green'><B>CCed To </B></FONT>: "+mail.getCc()+"<BR>";
if (!("".equals(mail.getBcc())))
result = result +"<FONT color='green'><B>BCCed To </B></FONT>: "+mail.getBcc() ;
result = result+"<BR><HR>";
} catch (MessagingException mex) {
result = result + "<FONT SIZE='4' COLOR='blue'> <B>Error : </B><BR><HR> "+"<FONT SIZE='3' COLOR='black'>"+mex.toString()+"<BR><HR>";
} catch (Exception e) {
result = result + "<FONT SIZE='4' COLOR='blue'> <B>Error : </B><BR><HR> "+"<FONT SIZE='3' COLOR='black'>"+e.toString()+"<BR><HR>";
e.printStackTrace();
finally {
return result;
} -
How-to bind binary data into textbox
can i bind binary data into the textbox....
coz..i get human unreadable character
[B@184b867# binary data - byte array
supposingly ..i just need to convert to bytes.toString() to see the content...
yet i try but..it still return this weird character...any idea...
OutMailBean outMailBean = new OutMailBean();
outMailBean.setHost(request.getParameter("SMTP").trim());
outMailBean.setPort(request.getParameter("port").trim());
outMailBean.setMessages(request.getParameterValues("message")); //string[]
//convert to byte array
outMailBean.setMessage(util.convertStringBufferToByteArr(bean.getMessages()));
//insert into table
Statement stmt = con.createStatement();
try {
ResultSet rs = stmt.executeQuery(squery);
try {
while (rs.next()) {
OutMailBean outMailBean = new OutMailBean();
outMailBean.setEmailId(rs.getString("EMAILID"));
outMailBean.setDateIn(rs.getString("DATEIN"));
outMailBean.setMessage(rs.getBytes("MESSAGE"));
System.err.println(rs.getBytes("MESSAGE").toString());
//this will return human unreadable form........
OutMailAckBean outMailAckBean = new OutMailAckBean();
outMailAckBean.setAckDelivery(rs.getString("ACKDELIVERY"));
outMailAckBean.setReceipient(rs.getString("RECEIPIENT"));
beanList.add(outMailBean);
beanList.add(outMailAckBean);
} finally {
rs.close();
} finally {
stmt.close();
Message was edited by:
yzme yzme
Message was edited by:
yzme yzmeHi yzme,
You need to convert the binary data to characters, a String, before you can properly display it. You say that <i>System.err.println(rs.getBytes("MESSAGE").toString());</i> prints human unreadable stuff. Maybe you need to use another character encoding, like this
byte[] message = rs.getBytes("MESSAGE");
String s = new String(message, "UTF-8"); // or "ISO-8859-1"
It all depends on how the original email message, presumably text, was stored in the database. There's no general way to convert a byte[] to a String and vice versa.
BTW, if you populate your OutMailBean using <i>outMailBean.setMessages(request.getParameterValues("message"));</i> then you're actually saying an email can have several messages and OutMailBean contains a <i>String[] messages</i> attribute. Then, you call the <i>outMailBean.setMessage</i> method which implies an email has one message and according to you comment OutMailBean contains a <i>byte[] message</i> attribute. The question is of course how you convert the <i>String[] messages</i> attribute to the <i>byte[] message</i> attribute. In other words, what does <i>util.convertStringBufferToByteArr</i> exactly do? It doesn't even convert a <i>StringBuffer</i>, but a <i>String[]</i>. What you probably want to do is something like
//OutMailBean bean
String[] messages = bean.getMessages();
StringBuffer sb = new StringBuffer();
for (int j = 0; j < messages.length; j++) {
sb.append("message ").append(j).append("rn");
sb.append(messages[j]).append("rnrn");
bean.setMessage(sb.toString().getBytes("UTF-8"));
Kind regards,
Sigiswald -
Sending binary data over RS232 without conversion to ascii
I need to send binary data to a PIC without the data being converted to ascii. With the VISA vi's, when I want to send 11111111, it gets converted to a string "255", and is sent as "2","5","5" in ascii.
How can I send it as one byte?r_keller wrote:
@tbob: I probably shouldnt tell my customer that he's an idiot, and obviously 9 bit addressing/signalling modes seem to be not so uncommon in industry, so ur post does not really contribute to solve the problem.
Well I wouldn't call my customer an idiot either. I didn't know he was your customer. Sorry. Not every comment posted here is intended to directly solve a problem. We are a fun loving group, and occasional ribbings take place here. I still think that trying to use 9 bits over an 8-bit protocol is not a good way to go. But if it is the only way, then so be it.
r_keller wrote:
Does the Mark or Space parity bit add another 10th bit to the command or can i only use either ODD parity/Mark/Space?
According to the link you attached, the parity bit adds only one more bit. If the number of bits is set to 8, then the parity is the 9th bit, and you can only use Mark or Space to force that 9th bit to either 1 or 0 respectively. If you try to use odd or even parity, the protocol will determine the parity and change the bit accordingly, and it may not be the one you intended to send. The start and stop bits are fixed by the protocol and cannot be used for extra data bits.
Actually, until I read that article about using Mark and Space, I had no idea at all that sending 9 bits at a time was possible.
- tbob
Inventor of the WORM Global -
Masking sensitive data in the messages?
All,
We are getting some sensitive data from a legacy system that needs to be imported into R/3. There is a translation service - that translates the sensitive data into public format.
The question i have is - though we will be able to use XI to call this translation service and translate and then send the translated values to R/3, how can we mask the sensitive data on the messages that would be logged in the XI system. (Like if somebody runs the SXMB_MONI - they will be able to see the sensitive data that was sent to get the public format back).
Is there a setting or way - we can accomplish this in XI?
Thanks.Hi,
you have to restrict user access to certain messages.
Go through this blog to see how to accomplish this:
<a href="/people/michal.krawczyk2/blog/2006/01/02/xi-sxmbmoni--controlling-access-to-message-display: SXMB_MONI - controlling access to message display</a>
Also have a look at this link to understand which are all the possible points you should protect:
<a href="http://help.sap.com/saphelp_nw04s/helpdata/en/a0/64f6413a15e23ee10000000a155106/frameset.htm">Protection of Sensitive Message Data</a>
Kind Regards,
Sergio -
Java proxy to send binary data
Hi guys,
I needed a small clarification.
I'm using java proxy sender and file receiver in a scenario. I want to pick up binary files (i.e. the file could be of any format text,zip,pdf, image etc) using jakarta commons api to connect to ftp and then call the proxy to send this file data via proxy.
I'm not clear on how this requirement can be achieved or it can be achieved or not.Hi Stefan,
I'm referring to the comments given by Michal in the below blog.
[How to send any data (even binary) through XI, without using the Integration Repository|How to send any data (even binary) through XI, without using the Integration Repository] -
How to output binary data to VISA
i am interfacing labview with pic microcontroller through serial port using VISA. it is a stream of digital data which is being tranmitted ,stored in microcontroller and then retransmiited by microcontroller to other device...problem is when that data is converted to string to be given to VISA it makes 16bytes out of 16bits...for example if data was "11110000" (1byte) after converted to string it becomes 8 bytes and my microcontroller thibk that 8 bytes are coming................ please kindly tell me how to transmit binary data over serial port so that bit remains a bit dont become byte............................ data is 99bytes but after passing through VISA it become "99x16"bytes........ please help me
regards
umairThe attached example in 8.0 converts a U16 into two U8, builds an array and with the Byte Array to String, converts to the hex string 8000 (two bytes). Note that the string indicator is configured for Hex Display (right click option).
Now, when you say you want to see '1000001 on the hyperterminal of other PC', you are contradicting yourself. Hyperterminal cannot be set for binary display so if you want to see '10000001' in Hyperterminal, then you need 8 bytes (one for each ASCII character).
I hope I have made myself clear.
Attachments:
U16 to Hex String.vi 8 KB -
When i go to send a new text, the text field isn't blank. There is already text entered in the message body that I have to go in and delete before typing my new text. this prevents me from forwarding anything through text because if I get something I wish to forward, selecting forward as an option always brings up the same junk just like when trying to send a new message. How can i remedy this?
Here it goes -
1) Download iBackupBot: http://download.cnet.com/iBackupBot/3000-2141_4-10969873.html
2) Plug phone into computer and run backup
3) Use "Explorer" box to find Messages: HomeDomain/Library/SMS/Drafts/(null).draft/
4) In "Null Drafts" there is a file "message.plist"
5) Double click to open, (cancel the popup if you did not purchase the iBackupBot) and you will see the prepopulating message on the <string> line 6
6) Delete the offending text, leave all code
7) Close text editor
8) Right click on message.plist file and select "Restore selected item(s) to device"
9) File will be restored to your phone and it will restart itself.
10) Voila! Now it is time to consider that Windows phone....:)
Maybe you are looking for
-
The video on my iPad 2 is frozen on a tv show, although it will play the tv show until the end. At the end, when I click 'done' the screen goes black so I can't see the other movies that I've downloaded. I've shut down a few times but it reverts to t
-
It's done it with a load of cds, so then I can't even get the album artwork to work. Please help! It's starting to bug me haha
-
Hi, I item category U has been deleted from system and changed in item category T, how can I create again item category U ? Best regards
-
Any difference between webdynpro for java and webdynpro for abap ?
Hi all: I would like to build one small system in EP. I can choose to use webdynpro for java and webdynpro for abap. I would like to ask any major difference between webdynpro for abap and webdynpro for java ? Is fpm supported in webdynpr
-
Using WRT54G as second wireless with E2500
I've been reading threads on this but want to make sure I have this correct. Currently, I'm using the E2500 as my main wireless router in my home (upstairs). I replaced my WRT54G with the E2500 for my DSL connection throughout the house. I run an e