Quite possible it does not... I was under the impression that 2004 cars with Assist had BT, but it's only 2005 cars that do... according to the wiki:
Bluetooth Phone
The OEM Bluetooth (BT) kit is available for e46's made 3/02 or later. It is compatible with all other BMW options (including the Navigation system) except Assist (on pre-9/04 cars). Starting with 9/04 production (2005 model year), BT came factory installed on cars equipped with Assist (using the same module).
BT on pre-9/04 is very rare, as it would have to be retrofitted by the owner, and is expensive, so don't assume your car has it. Cars came from the factory with a card indicating a BT passcode, even though pre-9/04 cars does not have a BT module. The telephone button on the steering wheel also does not indicate whether a car has BT or not, but merely that the car is pre-wired for a telephone, as indicated by the sticker on the truck lid. On pre-9/04 cars, there will be a separate pairing button (located under the armrest - see install link) on BT-retrofitted cars. On post-9/04 cars, there is no pairing button, and the pairing procedure is slightly different that older models.
If you have the Assist, but would prefer the BT, you can have the BT. It's merely a matter of removing Assist (the BT requires the same harness that the Assist uses). The module is fairly expensive (over $500), and the best sources seem not to be dealers. Many dealers refused to sell to cars equipped with Assist (this may have changed by now, but was the case when the cars were new). Also, most dealers would not install it, as the module swap disabled Assist, so it's strictly DIY. It is a very simple procedure for even the non-mechanically minded, though. Check with Bimmernav
[10] for install instructions, and current prices on a BT module.